Распечатайте энную конвейерную команду в ударе

[116764] Используя [117270]sed[117271] и [117272]awk

Пример:

Two awk's

dpkg-reconfigure ubuntu-desktop

Пример:

1
14.03.2015, 08:50
1 ответ
# put commands in an array, e.g.: cat /etc/passwd | grep 1555 | grep sh
cmd=("cat /etc/passwd" "grep 1555" "grep sh")

# execute commands
eval "${cmd[0]}" | eval "${cmd[1]}" | eval "${cmd[2]}"

# save PIPESTATUS
save=("${PIPESTATUS[@]}")

# print returncode and failed command
for ((i=0;i<${#save[@]};i++)); do
  [[ ${save[$i]} -ne 0 ]] && echo "${save[$i]}: ${cmd[$i]}"
done

unset save cmd

Выход (например):

1: grep 1555
1: grep sh
3
27.01.2020, 23:27

Теги

Похожие вопросы