我有一个脚本,过一段时间会运行这个,但我真的不明白它是如何工作的。我现在的理解是,如果command失败,它将在stderr中响应某些内容,但是我尝试了

command -v lftp >/dev/null 2>&1

即使我安装了lftp,它也不会输出任何信息。有人能给我解释一下这条线到底是干什么的吗?
# check lftp is installed
command -v lftp >/dev/null 2>&1 || {
    echo >&2 "lftp is required. Please install it.      Aborting."
    exit 1
}

最佳答案

它寻找路径上的lftp并丢弃它找到的位置和/或任何错误(它将它们发送到/dev/null,这就像一个黑洞-数据进入它,什么也不会离开它)。
然后,如果找不到它,它会显示错误消息并退出脚本,退出代码为1

关于linux - “命令-v lftp>/dev/null 2>&1”是什么意思?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20229446/

10-10 00:57