Как да изпълнявате две или повече терминални команди наведнъж в Linux

Съдържание:

Как да изпълнявате две или повече терминални команди наведнъж в Linux
Как да изпълнявате две или повече терминални команди наведнъж в Linux

Видео: Как да изпълнявате две или повече терминални команди наведнъж в Linux

Видео: Как да изпълнявате две или повече терминални команди наведнъж в Linux
Видео: How to Set Up Parental Controls on iPhone - YouTube 2024, Април
Anonim
Ако използвате Linux, знаете колко полезна е командната линия за работа с файлове, инсталиране на софтуер и стартиране на програми. Но това може да бъде още по-ефективно, ако изпълнявате няколко команда наведнъж.
Ако използвате Linux, знаете колко полезна е командната линия за работа с файлове, инсталиране на софтуер и стартиране на програми. Но това може да бъде още по-ефективно, ако изпълнявате няколко команда наведнъж.

Комбинирането на две или повече команди в командния ред е известно също като "команда за верига". Ще ви покажем различни начини, по които можете да комбинирате команди в командния ред.

Вариант Първа: Операторът на точка и запетая (;)

Операторът на точка и запетая ви позволява да изпълнявате последователно няколко команди, независимо от това дали всяка предишна команда е успешна. Например, отворете прозореца на терминала (Ctrl + Alt + T в Ubuntu и Linux Mint). След това въведете следните три команди на един ред, разделени с точка и запетая и натиснете Enter. Това ще ви даде списък на текущата директория (

ls

), разберете коя директория в момента сте в (

pwd

) и да се показва вашето потребителско име (

whoami

) всичко наведнъж.

ls; pwd; whoami

Не е нужно да поставяте интервали между точка и запетая и командите. Можете да въведете трите командата като

ls;pwd;whoami

Пространствата обаче правят комбинираната команда по-четивна, което е особено полезно, ако въвеждате комбинирана команда в скрипт на shell.

Image
Image

Вариант Втори: Логическият И оператор (&&)

Ако искате втората команда да се изпълнява само ако първата команда е успешна, разделете командите с логически оператор AND, който е два амперсанди (

&&

). Например, ние искаме да направим директория, наречена MyFolder и след това да променим тази директория, при условие че тя е създадена успешно. Затова въведете следното на командния ред и натиснете Enter.

mkdir MyFolder && cd MyFolder

Папката бе създадена успешно, така че

cd

командата бе изпълнена и сега сме в новата папка.

Препоръчваме да използвате по-скоро логическия оператор AND, а не този на точка и запетая (

;

). Това гарантира, че не правите нищо катастрофално. Например, ако изпълнявате команда за промяна на директория и след това принудително премахнете всичко в тази директория рекурсивно (

cd /some_directory; rm -Rf *

), може да доведе до разрушаване на системата, ако промяната в директорията не се е случила. Не че препоръчваме да изпълнявате команда, за да премахнете безусловно всички файлове в директория наведнъж.

Image
Image

Трети вариант: Логическият оператор OR (||)

Понякога може да искате да изпълнявате втора команда само ако първата команда се изпълнява неуспее. За целта използваме логически OR оператор или две вертикални ленти (

||

). Например, искаме да проверим дали директорията MyFolder съществува (

[ -d ~/MyFolder ]

) и да го създадете, ако не го направи (

mkdir ~/MyFolder

). Затова въведете следната команда на промпта и натиснете Enter.

[ -d ~/MyFolder ] || mkdir ~/MyFolder

Уверете се, че има интервал след първата скоба и преди втората скоба или първата команда, която проверява дали директорията съществува, няма да работи.

В нашия пример директорията MyFolder не съществува, така че втората команда създава директорията.

Image
Image

Комбиниране на няколко оператора

Можете също да комбинирате няколко оператора на командния ред. Например, първо искаме да проверим дали файлът съществува (

[ -f ~/sample.txt ]

). Ако това се случи, ще отпечатаме съобщение на екрана, казвайки така (

echo “File exists.”

). Ако не, създаваме файла (

touch ~/sample.txt

). Така че, напишете следното в командния ред и натиснете Enter.

[ -f ~/sample.txt ] && echo “File exists.” || touch ~/sample.txt

В нашия пример файлът не съществува, така че той е създаден.

Ето полезно обобщение на всеки от операторите, използвани за комбиниране на команди:
Ето полезно обобщение на всеки от операторите, използвани за комбиниране на команди:
  • A; B

    - Run A и след това B, независимо от успеха или неуспеха на A

  • A && B

    - Бягайте само ако A е успял

  • A || B

    - Бягайте само ако A не е успешно

Всички тези методи за комбиниране на команди могат да се използват и в скриптове на черупки както на Linux, така и на Windows 10.

Можете също така автоматично да коригирате правописа и печатни грешки, когато използвате "cd" на командния ред в Linux, за да избегнете драстични последствия при комбиниране на команди.

Препоръчано: