Operator rur (|) służy do uruchamiania dwóch lub więcej powiązanych poleceń jednocześnie. Wejście następnego polecenia będzie wyjściem poprzedniego polecenia. Tak więc sukces każdego polecenia zależy od sukcesu wcześniejszego polecenia bez pierwszego polecenia. W poniższym poleceniu pierwsze polecenie, LS znajdzie listę plików i folderów bieżącej lokalizacji i wyśle wyjście jako wejście dla drugiego polecenia, toaleta. Wydrukuje całkowitą liczbę linii, słów i znaków na podstawie danych wejściowych.
$ ls -l | WC -LWC
SEMICOLON (;) Operator
Eleminicolon (;) Operator jest używany do uruchamiania dwóch lub więcej niepowiązanych poleceń jednocześnie. Oznacza to, że wyjście każdego polecenia nie jest zależne od innych poleceń. W poniższym przykładzie trzy typy poleceń są łączone razem, a awaria każdego polecenia nie stworzy wpływu na wyjście innych poleceń. Pierwsze polecenie wydrukuje zawartość pliku, drugie polecenie stworzy katalog, a trzecie polecenie zmieni bieżący katalog.
$ cat myfile.tekst ; Mkdir Newdir; CD Desktop
Operator logiczny i (&&)
Polecenia prowadzone przez logiczne i (&&) są ze sobą powiązane, jak polecenie rur (|). Tak więc, jeśli poprzednie polecenie nie uda się pomyślnie wykonać, następne polecenia nie będą działać. W poniższym przykładzie dwa polecenia, MKDIR i RMDIR połączone przez operatory &&. Tak więc polecenie MKDIR nie udało się wykonać, wówczas polecenie RMDIR nie będzie wykonywać. Zgodnie z wyjściem polecenia LS, katalog MYDIR już istnieje w bieżącej lokalizacji. Więc pierwsze polecenie nie zostanie wykonane, a dla tego drugiego polecenia również nie wykonuje.
$ ls
$ mkdir mydir && rmdir temp
$ ls
Operator logiczny lub (||)
Operator logiczny lub (||) jest przeciwieństwem operatora logicznego i (&&). Następne polecenie zostanie wykonane, jeśli poprzednie polecenie nie będzie wykonywać. Trzy polecenia CAT są połączone z operatorem lub (||) w poniższym przykładzie. Po uruchomieniu polecenia, przede wszystkim spróbuje wyświetlić zawartość CAT.plik txt. Jeśli żaden taki plik nie istnieje w bieżącej lokalizacji, spróbuje wykonać następne polecenie. Zgodnie z wyjściem, ptak.Plik TXT istnieje w bieżącej lokalizacji i wyświetlana jest zawartość tego pliku.
$ cat cat.TXT || Kot pies.TXT || Kotek.tekst
Wiele poleceń z wieloma operatorami
Możesz użyć wielu operatorów do uruchamiania wielu poleceń jednocześnie. W poniższym przykładzie trzy polecenia są połączone z operatorami lub (||) i (&&). Po uruchomieniu polecenia przede wszystkim zmieni obecny katalog na Newdir. Jeśli to polecenie się nie powiedzie, utworzy katalog, wykonując drugie polecenie i wydrukuj komunikat: „tworzony jest katalog.”Według danych wyjściowych katalog Newdir nie istnieje w bieżącej lokalizacji. Tak więc komunikat o błędzie jest wyświetlany, a katalog jest tworzony później.
$ CD Newdir || mkdir newdir && echo „katalog jest tworzony”
Operator kombinacji
Dwa lub więcej poleceń można połączyć za pomocą tego operatora, a jeśli wykonanie pierwszego polecenia nie powiedzie się, drugie polecenie nie zostanie wykonane. W poniższym przykładzie lub i operatory kombinacji są używane razem. Pierwsze polecenia sprawdzą, że katalog temperatury istnieje w bieżącej lokalizacji, czy nie. Jeśli pierwsze polecenie się nie powiedzie, utworzy katalog temp i wydrukuje wiadomość. Ostatnie polecenie wyświetli bieżącą listę katalogów.
$ [-d temp] || mkdir temp; Echo Temp Directory jest teraz tworzony.; && ls
Operator Pierwszej Pierwszej ()
Możesz użyć tego operatora do grupowania poleceń w momencie wykonania. Tutaj każda grupa będzie działać jako jedno zadanie. W poniższym przykładzie zdefiniowane są dwie grupy poleceń i jeśli pierwsza grupa nie wykonuje, wówczas druga grupa wykonuje.
$ (cd temp && ls -a) || (mkdir temp && ls)
Ten samouczek wyjaśnił głównie używane operatory do uruchamiania wielu poleceń w Linux. Ale istnieje wiele innych operatorów w Bash, które służą do uruchamiania dwóch lub więcej poleceń razem. Są to Ampersand (&), przekierowanie (, >>), logiczne nie (!), Kombinacja () itp.