Как продвинуть бизнес в сети?
Создать сайт!Как запустить две или более терминальных команды одновременно в Linux
Если вы используете Linux, вы знаете, насколько полезной может быть командная строка для работы с файлами, установки программного обеспечения и запуска программ. Но это может быть еще более эффективно, если вы запускаете несколько команд одновременно.
Объединение двух или более команд в командной строке также называется «объединением команд». Я покажу вам различные способы объединения команд в командной строке.
При разработке проекта на Python Django в виртуальной среде мне каждый раз в начале работы приходилось запускать поочередно несколько команд. Я решил их объединить в одну и вот как это можно сделать. Предлагаю несколько вариантов с примерами.
Вариант первый: оператор точка с запятой (;)
Оператор точка с запятой (;) позволяет вам выполнять несколько команд подряд, независимо от того, была ли успешной каждая предыдущая команда. Например, откройте окно терминала (Ctrl + Alt + T в Ubuntu и Linux Mint). Затем введите следующие четыре команды в одну строку, разделенные точкой с запятой, и нажмите Enter.
cd djangoprojects ; source eComEnv/bin/activate ; cd djangoshop ; ./manage.py runserver
В результате выполнения комплекса команд вы получите:
1. cd djangoprojects — перейдете в директорию с Django проектами — djangoprojects
2. source eComEnv/bin/activate - включит виртуальное окружение
3. cd djangoshop - перейдете в директорию с проектом djangoshop
4. ./manage.py runserver - запустит веб-сервер
Вам также не нужно ставить пробелы между точками с запятой и командами. Вы можете ввести три команды как:
cd djangoprojects;source eComEnv/bin/activate;cd djangoshop;./manage.py runserver
Однако пробелы делают комбинированную команду более удобочитаемой, что особенно полезно, если вы помещаете комбинированную команду в сценарий оболочки.
Этот вариант имеет следующую особенность - Вне зависимости от того, как выполнилась предыдущая команда, следующая команда должна будет запуститься.
Вариант второй: логический оператор И (&&)
Если вы хотите, чтобы вторая команда выполнялась только в том случае, если первая команда выполнена успешно, разделите команды с помощью логического оператора AND, который является двумя амперсандами ( && ). Например, мы хотим перейти в каталог с именем djangoprojects, а затем включит виртуальное окружение eComEnv при условии, что оно существует. Итак, мы вводим следующее в командной строке и нажимаем Enter.
cd djangoprojects && source eComEnv/bin/activate
Каталоги существуют и виртуальное окружение было запущено.
Мы рекомендуем чаще использовать логический оператор AND, а не точку с запятой ( ; ). Это гарантирует, что вы не делаете ничего катастрофического. Например, если вы запустите команду, чтобы перейти в каталог, а затем рекурсивно вынудить удалить все в этом каталоге ( cd /some_directory ; rm -Rf * ), вы можете в конечном итоге разрушить вашу систему, если перехода в каталог some_directory не произойдет. Мы также не рекомендуем запускать команду для безоговорочного удаления сразу всех файлов в каталоге.
Вариант третий: оператор логического ИЛИ (||)
Иногда вам может потребоваться выполнить вторую команду, только если первая команда не удалась. Для этого мы используем логический оператор ИЛИ или две вертикальные черты ( || ). Например, мы хотим проверить, существует ли каталог MyFolder ( [ -d ~/MyFolder ] ), и создать его, если его нет (mkdir ~/MyFolder). Итак, мы вводим следующую команду в командной строке и нажимаем Enter.
[ -d ~/MyFolder ] || mkdir ~/MyFolder
Убедитесь, что после первой скобки и перед второй скобкой или первой командой есть пробел, который проверяет, существует ли каталог, иначе не будет работать.
В нашем примере каталог MyFolder не существует, поэтому вторая команда создает каталог.
Объединение нескольких операторов
Вы также можете объединить несколько операторов в командной строке. Например, мы хотим сначала проверить, существует ли файл ( [ -f ~/sample.txt ] ). Если это произойдет, мы выводим на экран сообщение о том, что это так ( echo “File exists.” ). Если нет, мы создаем файл ( touch ~/sample.txt ). Итак, мы вводим следующее в командной строке и нажимаем Enter.
[ -f ~/sample.txt ] && echo «Файл существует.» || touch ~/sample.txt
В нашем примере файл не существует, поэтому он был создан.
Вот полезная сводка по каждому из операторов, используемых для объединения команд: A ; B - Запустите A, а затем B, независимо от успеха или неудачи A A && B - запуск B только в случае успеха A A || B - Запустить B, только если A не удалось Все эти методы объединения команд также можно использовать в сценариях оболочки как в Linux, так и в Windows 10 .
Как продвинуть бизнес в сети?
Создать сайт!Копирование материала возможно только при активной прямой ссылке (открытой для индексации) на источник.
Создание сайтов. Разработка сайтов. Веб дизайн. Заказать сайт, интернет-магазин Беларусь Минск Витебск Гомель Могилев Горки другие города и страны.
Контакты
Phone: +37544 5544-244
Phone: +37533 690-55-54