If you write a 1 line shell script that forks a process, like the following:
for i in {1..1000};do ./binary & done
It runs, you don't need a semicolon, and if you try to use a semicolon it throws a syntax error.
In a normal loop, without forking, you need the semicolon for it to work in a 1 line script. Why does the fork operator change how this works?
;
or&
depending on if you want the pipeline to run in the foreground or the background. A newline implicitly adds a semi-colon if the command can logically finish at that point. – icarus Mar 06 '21 at 04:07?
. Usually we use.
to end a sentence. Why does the question mark change how this works? Why not?.
? The same situation. You call&
"fork operator" but it's a separator/terminator. So is;
. You use one xor the other. – Kamil Maciorowski Mar 06 '21 at 05:47