Senden Sie die Aufgabe in einem "Wenn" an den Hintergrund.


10

Warum ist das?

if true; then sleep 3 &; fi
bash: syntax error near unexpected token `;'

Ich möchte rennen

sleep 3

im Hintergrund, so dass der Befehl ["sleep 3" ist nur ein Beispiel] im "paralell" -Stil ausgeführt wird, sodass er schneller beendet wird. Aber ich verstehe das:

bash: syntax error near unexpected token `;'

Fehlermeldung. Warum? Warum kann ich keine Aufgabe in den Hintergrund schicken?


Was denkst du, testest du mit der ifAussage?
Glenn Jackman

Antworten:


6

Scheint, als müssten Sie in diesem Fall keine Befehle &trennen ( sie selbst trennen).

Beispielsweise.

$> if true; then (sleep 3; echo ok) &  fi
[1] 14224
$> ok

8

Es ist, weil &es bereits ein Anweisungstrennzeichen ist, also sollten Sie danach nicht setzen ;.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.