问题是,当我使用脚本的这一部分时,它在 Linux 环境中工作正常,在其余代码中它返回文件列表。但是,在Windows 10上使用CMDER(完整版(时,它仅返回"未找到.txt文件"。因此,即使我在那里有 3 个.txt文件,也没有在定义的路径中找到.txt文件。我甚至尝试了MobaXterm并得到了相同的结果。
path=$1
#files with read permission in path
count=`find $path -type f -name '*.txt' -perm /a=r`
# at least one file found
if [ "X${count}" = "X" ]
then
echo 'no .txt files found'
exit 1
fi
请注意,我是 shell 脚本的初学者,真的很想学习,所以任何建议都非常感谢!
我通过在配置文件夹内的user_profile末尾添加以下行来解决问题
set "PATH=%GIT_INSTALL_ROOT%usrbin;%PATH%"
注意:还有其他方法可以解决此问题,这对我来说似乎是最简单的方法。
你确定你的脚本可以工作吗?Bash 中的相等运算符是==
,而不是=
。
请参阅 Bash 中的字符串比较