Chciałbym znaleźć odpowiednik
cmd 1 && cmd 2 && ... && cmd 20
ale z poleceniami wyrażonymi w for
pętli jak
for i in {1..20}
do
cmd $i
done
Co sugerujesz zmienić w drugim wyrażeniu, aby znaleźć odpowiednik pierwszego?
Odpowiednikiem oryginalnej sekwencji będzie:
for i in {1..20}
do
cmd $i || break
done
Różnica w stosunku do odpowiedzi Amita polega na tym, że skrypt nie chce wyjść, tzn. Wykona potencjalne polecenia, które mogą podążać za sekwencją / pętlą. Zauważ, że zwracany status całej pętli zawsze będzie prawdziwy z moją sugestią, może to zostać naprawione, jeśli ma to zastosowanie w twoim przypadku.
cmd && cmd
Jeśli chcesz brudnego rozwiązania jednowierszowego, możesz utworzyć polecenie i wysłać je do bash.
źródło
Możesz wyjść z pętli, jeśli jeden z nich się nie powiedzie
źródło
break
tam legalne? Jestem prawie pewien, żeif
oświadczenie nie przeszkadza ...W ten sposób wykonuję swoje zadania w terminalu bez użycia
&&
Podobnie jak ty musisz umieścić to polecenie w skrypcie
Oba dają mi ten sam efekt
źródło