Терминал (OS X), очередь команд из файла - PullRequest
5 голосов
/ 20 декабря 2011

Я хочу выполнить очередь команд в терминале Mac. Можно ли подготовить файл, содержащий серию команд, и отправить файл через терминал? Например... command.txt содержит несколько команд, по одной на строку:

./executable_file -f sub_a 100
./executable_file -f sub_b 100
./executable_file -f sub_c 100
./executable_file -f sub_d 100
...

Как я могу это сделать?

Ответы [ 3 ]

8 голосов
/ 20 декабря 2011

Возможно, я вас неправильно понимаю, но это звучит как типичный случай файла сценария оболочки.

Создайте файл «myscript.sh», добавьте в него свои команды. Сделай самую первую строчку

#!/bin/sh

, чтобы сказать OS X, что делать с файлом. Затем пометьте его исполняемым (chmod + x myscript.sh) и запустите его ./myscript.sh.

Это должно сработать.

2 голосов
/ 20 декабря 2011

Вы можете сделать это с помощью сценария оболочки, который содержит эти команды. Как правило, расширение будет .sh (поэтому назовите его commands.sh вместо commands.txt).

Затем вы можете запустить его, используя bash commands.sh.

Кроме того, если первая строка вашего файла - #!/bin/bash, и если вы сделаете его исполняемым (например, через chmod 755 commands.sh), вы сможете выполнить этот файл напрямую: ./commands.sh.

Другие строки, начинающиеся с # (или что-либо после # в строке), будут комментариями, если вам нужно.

Вот несколько уроков:

Существуют и другие оболочки, кроме bash, но в OSX bash используется по умолчанию (так же, как /bin/sh): это то, что вы уже используете в Terminal. Это также значение по умолчанию для количества дистрибутивов Linux.

1 голос
/ 20 декабря 2011

Да.Это называется сценарием оболочки и является функцией вашей оболочки (возможно, bash, если вы ее не изменили), а не самого Terminal.app.

В Интернете существует множество ресурсов о сценариях оболочки, нов базовой форме просто запустите файл со строкой

#!/bin/bash

, сделайте его исполняемым с помощью команды chmod +x commands.txt и поместите ваши команды в файл в том порядке, в котором вы хотите их запустить.(Обратите внимание, что использование расширения .txt, хотя и вполне законно, может немного сбивать с толку).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...