Если я хочу, чтобы серия команд выполнялась терминалом, вместо того, чтобы записывать его в текстовый файл, копировать и вставлять туда, могу ли я запустить терминал? Если так, каким должно быть расширение?
3 ответа
Принятый ответ вводит в заблуждение. На OS X (и U * x в целом) имя файла не имеет значения вообще. Важно то, что он должен иметь разрешение на выполнение (chmod +x file
) и правильную строку shebang .
bash$ cat > randomness #!/bin/sh echo Hello, world Ctrl+D bash$ chmod +x randomness bash$ ./randomness Hello, world bash$
Первая строка выглядит как комментарий, но это комментарий в специальном формате, называемом шебанг (сокращение от «резкого взрыва», общие имена для символов #
и !
). За этими двумя символами должен немедленно следовать абсолютный путь к интерпретатору, которому должен интерпретироваться этот сценарий (необязательно сопровождаемый пробелом и параметрами для интерпретатора; по причинам переносимости разрешается использовать только одну строку параметров).
То, что вы пытаетесь сделать, - это создать сценарий оболочки с расширением .sh (эквивалент Windows представляет собой командный файл с расширением .bat ). Вот простое учебное пособие, с которого вы можете начать, вот более сложное, которое содержит введение в стиль "hello world" для написания сценариев оболочки.
Просто напишите / вставьте свои команды в приложение TextEdit, затем сохраните их на рабочий стол .rtf и, как только они появятся на рабочем столе, нажмите на заголовок и переименуйте в нужное расширение. Появится окно с вопросом, уверены ли вы, что хотите сохранить как ... выберите ваш вариант. Готово. Значок должен измениться, чтобы обозначить приложение, которое может открыть расширение. Удачи.