Скрипт на CD и LS автоматически на macOS

я запускаю macOS Sierra и пытаюсь написать сценарий оболочки, который позволит мне использовать одну команду для cd и ls в то же время. Я ухожу из этой ветки, но не удалось адаптировать его к моему сценарию.

каталог: /usr/local/bin/

имя файла: cdls

код:

#!/bin/bash
cdls() { builtin cd "$@" && ls; }

Я никогда не писал скрипт оболочки, кроме простого echo hello world файл, так что, если вы могли бы указать мне справа направление было бы потрясающим. Благодаря.

EDIT:/usr/local/bin в моем PATH

20
задан Jay
03.05.2023 13:11 Количество просмотров материала 3048
Распечатать страницу

2 ответа

я бы сделать это, введя следующее в терминале:

. cdls /usr/local/bin/

здесь cdls это сценарий bash, хранящийся в моем $PATH:

#!/bin/bash
cd 
ls

. в терминальной команде sources скрипт, а не с помощью подоболочки.

в скрипте bash принимает usr/local/bin/ (заданный в командной строке) в качестве аргумента.

вы можете заменить С любым другим каталогом в скрипте, если вы всегда хотели cdls в определенную директорию.

что касается другого вопроса, на которые вы ссылались. Верхний ответ рекомендует следующее:

cdls() { cd "$@" && ls; }

, который является функцией и должен быть вставлен в код .bash_profile (для macOS) или .bashrc (для Linux), а не использоваться в bash-скрипт.

1
отвечен John Godlee 2023-05-04 20:59

пример, который вы получили от этого thead, предназначен для создания функции bash, которую вы бы поместили в свой .profile. Если вы хотите создать скрипт вместо добавления функции в профиль, ваш скрипт должен выглядеть следующим образом.

#!/bin/bash
builtin cd "$@" && ls
2
отвечен Zoredache 2023-05-04 23:16

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх