1

如果某个位置存在两个文件,我正在尝试执行命令

如果只有两个文件中的一个存在脚本必须执行另一个不同的命令这里是我尝试过的脚本

如果 [ -e /Users/NJ/Library && /Users/NJ/Desktop ];那么

回声

别的

回声单

4

4 回答 4

4

您需要将测试分隔到它们自己的方括号中:

if [ -e file ] && [ -e file ]; then
  echo "wow"
fi
于 2012-12-11T09:55:55.207 回答
1
if [ -e "/Users/NJ/Library" -a -e "/Users/NJ/Desktop" ];then

……

[ condition ]评估者使用 -a 表示 AND & -o 表示 OR 。是一本手册。

或使用以下语法。

if [ -e "/Users/NJ/Library" ] && [ -e "/Users/NJ/Desktop" ];then

……

于 2012-12-11T09:56:45.510 回答
0

您可以使用一个简单的双括号:

if [[ -e /Users/NJ/Library && -e /Users/NJ/Desktop ]] ;then

echo both

else

echo single

fi
于 2012-12-11T09:59:47.770 回答
0

如果 [ -e /Users/NJ/Library ] && [ -e /Users/NJ/Desktop ] ;那么

回声

别的

回声单

这种模式效果很好

于 2013-10-28T18:32:24.103 回答