Bash中如何获取所有管道命令的返回值


=Start=

搜索关键字:

linux how to get all pipe return value

参考链接:
参考解答:

$PIPESTATUS 数组(在Zsh中是小写)

# Bash
$ false | true
$ echo "${PIPESTATUS[0]} ${PIPESTATUS[1]}"
1 0

# Zsh
$ false | true
$ echo "${pipestatus[1]} ${pipestatus[2]}"
1 0
# Zsh
$ echo $0
-zsh
$ echo $ZSH_VERSION
5.0.5
$ ls | bogus_command | wc
zsh: command not found: bogus_command
       0       0       0
$ echo ${pipestatus[@]}
0 127 0

=EOF=

, ,

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注