不能将管道与 hdfs 一起使用



我无法在管道操作符中正确使用hdfs dfs。

[[ 'hdfs dfs -test -f "$hdfs_path"' ]] && echo "file exists" || echo "file doesn't exist"

无论文件是否存在,返回文件始终存在。

如果不加括号:

[[ hdfs dfs -test -f "$hdfs_path" ]] && echo "file exists" || echo "file doesn't exist"
我得到这个错误:bash: syntax error near dfs'

[[ -f "$path" ]] && echo "file exists" || echo "file doesn't exist"

不知道该怎么做

if hdfs dfs -test -f "$hdfs_path"; then
echo file exists
else
echo file does not exist
fi

不要使用test括号来运行命令。链接&&||不等同于if语句。

最新更新