我无法在管道操作符中正确使用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"
不知道该怎么做。
1条答案
按热度按时间aiazj4mn1#
不要使用测试括号来运行命令。链接
&&
和||
不等同于if语句。