我写了一个shell脚本。我有一个问题,我想手动确定文件夹名称。实际上,我用@ Suhas的帮助解决了问题。当我执行我的脚本时,我有一个错误
./scriptname: line 5: syntax error in conditional expression
./scriptname: line 5: syntax error near `"${folder2}"'
./scriptname: line 5: ` if [[ ! -d "${folder1}" "${folder2}" ]]; then'
有人可以找出错误吗?
答案 0 :(得分:1)
此:
if [[ ! -d "${folder1}" "${folder2}" ]]; then
需要分为2:
if [ ! -d "${folder1}" ] && [ ! -d "${folder2}" ]; then
答案 1 :(得分:1)
更好的&仍然使用[[ ]]
bash测试的双重测试的有效解决方案:
if [[ ! -d "${folder1}" && ! -d "${folder2}" ]]; then
[[
是一个类似于[
命令(但功能更强大)的bash关键字。请参阅http://mywiki.wooledge.org/BashFAQ/031和http://mywiki.wooledge.org/BashGuide/TestsAndConditionals。除非你是为POSIX sh写的,否则我们(wooledge.org)会推荐[[
。