Intereting Posts
Как подсчитать наличие шаблона в строке Как мне выполнить мой сценарий еще одну команду после того, как предыдущая команда вернет ненулевое значение до того, как оно будет прервано? Сервер Centos не обновляется с ошибкой обновления пространства-времени Перезапуск службы Systemd Unit при запуске или перезагрузке другого сервиса Предупреждения при открытии программ через вызовы подпроцесса Python средства мониторинга системы Можно ли заставить члена группы запускать что-то, что разрешено только судьей, как он сам? Буфер памяти в сценарии bash Перезапустить вентилятор вручную в Linux Как отремонтировать grub на debian Философия Unix была оставлена ​​в дизайне веб-приложений? Копирование файлов между пользователями Использование Telnet Ошибка Crossplatformui в Mint 11 Как создать контейнер systemd-nspawn? Зачем GDB нужен исполняемый файл, а также дамп ядра?

Как написать скрипт, который выполняет определенные команды на терминале?

Существуют определенные последовательности команд, которые я обычно набираю в консоли один за другим, например

adb devices adb uninstall com.package.abc cd myProjectDir meteor reset rm -f -r .meteor/local meteor run android-device 

Как написать скрипт, который позволяет мне выполнить все (или, по крайней мере, часть) этих команд в одной строке (например ./batchRunMeteor )?

Три способа:

A) запустить некоторое количество команд в одной строке, связанных с точкой с запятой

 adb devices; adb uninstall com.package.abc; cd myProjectDir; meteor reset; rm -f -r .meteor/local; meteor run android-device 

Здесь я сохранил первоначальное «намерение» простого последовательного выполнения. Одна рекомендация заключалась бы в том, чтобы выполнять последующие команды только в том случае, если предыдущий (ые) преуспел; это выполняется с помощью && :

 adb devices && adb uninstall com.package.abc && cd myProjectDir && meteor reset && rm -f -r .meteor/local && meteor run android-device 

B) создать псевдоним

 alias batchRunMeteor='adb devices; adb uninstall com.package.abc; cd myProjectDir; meteor reset; rm -f -r .meteor/local; meteor run android-device' # or use the && method: alias batchRunMeteor='adb devices && adb uninstall com.package.abc && cd myProjectDir && meteor reset && rm -f -r .meteor/local && meteor run android-device' batchRunMeteor 

C) создать сценарий оболочки

 cat > batchRunMeteor << EOF adb devices adb uninstall com.package.abc cd myProjectDir meteor reset rm -f -r .meteor/local meteor run android-device EOF chmod u+x batchRunMeteor ./batchRunMeteor 

Сценарий оболочки также может использовать && по желанию.