Если вы делаете
cmd 1 | cmd 2 ...тогда и беги более или менее одновременно. Если у вас многопроцессорная система, они могут работать одновременно. Но в любом случае они будут выполняться одновременно, причем точное планирование будет определяться слишком сложными факторами, чтобы их можно было прогнозировать.
cmd1
cmd2
Твое есть и твое есть . Поэтому запуск может начаться до того, как файл будет создан .cmd1
gzip -cN "$1" > "$1.gz"
cmd2
ls -l "$1.gz"
ls
gzip
"$1.gz"
ls
не читает со своего стандартного ввода, поэтому вставка в него смысла не имеет. Вы, вероятно, хотите сделать
gzip -cN "$ 1"> "$ 1.gz" && ls -l "$ 1.gz" | awk ''то есть, запустите
gzip
, а затем, если это удастся, запустите ls -l
.