Wystarczy dodać kilka punktów do doskonałej odpowiedzi @Wilf,
możesz uruchamiać polecenia równolegle, jeśli chcesz z jakiegokolwiek powodu, na przykład autostartskrypt dla OpenBox może wyglądać następująco:
#!/bin/bash
nitrogen --restore &
tint2 &
tilda
Spowoduje to ustawienie obrazu tła za pomocą nitrogen, uruchomienie panelu tint2i uruchomienie rozwijanej konsoli w stylu Quake3 tilda, wszystkie jednocześnie. Jest to przydatne, jeśli nie potrzebujesz programu do zakończenia przed uruchomieniem następnego. Nie w przypadku apt-get update, a apt-get upgradejednak!
Zwróć uwagę na &znak na końcu każdej linii. Spowoduje to, że powłoka rozwidli ten proces w tło i będzie kontynuować wykonywanie. Zauważ, że różni się od &&, który jest w zasadzie andznakiem, command_1 && command_2wykona się command_1i jeśli zakończy się sukcesem, tylko wtedy uruchomi się command_2, a command_1 & command_2rozpocznie drugi zaraz po pierwszym.
Ponadto możesz po prostu układać polecenia w stosy, aby były one wykonywane szeregowo, na przykład:
#!/bin/bash
apt-get update
apt-get upgrade
Będzie to działać apt-get upgradepo apt-get updatejest zakończona , ale niezależnie od wyniku. Tak więc nawet jeśli na przykład aktualizacja zakończy się z powodu błędu sieci, aktualizacja będzie nadal uruchomiona.
Można również zrobić to w jednym wierszu, używając ;znaku: apt-get update ; apt-get upgrade. Ponownie, to rozwiązanie nie jest optymalne dla tych konkretnych poleceń, ale może się przydać w innych sytuacjach.
Jeden szybki punkt końcowy, możesz także przełamać linie zawierające &&jako takie:
command_1 &&
command_2
Będzie to to samo, co command_1 && command_2.