Найти в Дзене

Как запускать sh скрипты на Ubuntu

В данной статье пойдет речь о том, как запускать сценарии командной оболочки (shell скрипты) в Ubuntu. Что такое sh скрипт Если кратко, sh скрипт - это файл, в котором описываются последовательно выполняемые команды. Подробнее о сценарии командной оболочки можно прочесть в Wikipedia: Сценарий командной строки. В такой файл мы можем вписать все команды, которые выполняем в терминале, то есть, которые исполняются командной оболочкой нашей системы. Стоит упомянуть, что расширение .sh вовсе не обязательно, так как в Unix-подобных операционных системах нет требований к расширению имени файла, однако для скриптов командной оболочки выделено расширение .sh. Как запускать sh скрипты в командной строке. Запускать скрипты sh из командной строки легко. 1. Сделать файл скрипта исполняемым (если он еще таковым не является): chmod +x script.sh 2. Запускаем скрипт, просто указав путь до него: path/to/script.sh Если скрипт находится в текущей директории, то нужно указать ./ перед именем файла скри
Оглавление

В данной статье пойдет речь о том, как запускать сценарии командной оболочки (shell скрипты) в Ubuntu.

Что такое sh скрипт

Если кратко, sh скрипт - это файл, в котором описываются последовательно выполняемые команды.

Подробнее о сценарии командной оболочки можно прочесть в Wikipedia: Сценарий командной строки.

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

Стоит упомянуть, что расширение .sh вовсе не обязательно, так как в Unix-подобных операционных системах нет требований к расширению имени файла, однако для скриптов командной оболочки выделено расширение .sh.

Как запускать sh скрипты в командной строке.

Запускать скрипты sh из командной строки легко.

1. Сделать файл скрипта исполняемым (если он еще таковым не является):

chmod +x script.sh

2. Запускаем скрипт, просто указав путь до него:

path/to/script.sh

Если скрипт находится в текущей директории, то нужно указать ./ перед именем файла скрипта:

./script.sh

Иногда требуются права суперпользователя для запуска скрипта, тогда просто перед скриптом пишем команду sudo:

sudo ./script.sh
sudo path/to/script.sh

Можно запускать скрипты, непосредственно указывая интерпретатор: sh, bash и другие:

bash script.sh

sh path/to/script.sh

Но не советую так делать на постоянной основе.

Как запустить sh в файловом менеджере Ubuntu (Nautilus)

В файловом менеджере (Nautilus) Ubuntu sh скрипты запускаются двойным кликом по файлу:

Нужно убедиться, что в свойствах файла на вкладке "Права" установлена галочка "Выполнение" - "Разрешить выполнение файла как программы":

Решаем проблему файлового менеджера Ubuntu при запуске скриптов sh

По умолчанию, после установки системы Ubuntu, если вы попытаетесь выполнить скрипт двойным кликом, то файл у вас откроется в текстовом редакторе:

Чтобы решить эту проблему, открываем "Параметры", переходим на вкладку "Поведение", в пункте "Исполняемые текстовые файлы" выбираем "Спросить что делать" или "Запустить":

Разница их в том, что при выборе пункта "Спросить что делать", будет выбор в каком режиме запустить скрипт:

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

Как сделать так, чтобы терминал не закрывался после завершения sh скрипта в Ubuntu.

Когда мы запускам какой-либо скрипт из файлового менеджера, выбрав "Запустить в терминале":

У нас откроется окно терминала. Но после выполнения всех команд, описанных в sh скрипте, окно терминала закроется. В результате, мы не может просмотреть лог (историю) выполнения.

Чтобы решить эту проблему, переходим в "Параметры" терминала. В параметрах выбираем наш профиль и переходим на вкладку "Команда", в пункте "При выходе из команды" выбираем "Держать терминал открытым":

Вот и всё.

Источник

#linux #ubuntu #shscript #скрипты #линукс #лайфхак