1

问题是,当我使用这部分脚本时,它在 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 脚本的初学者,非常想学习,因此非常感谢任何建议!

4

2 回答 2

1

我通过在配置文件夹内的 user_profile 末尾添加以下行来解决问题

set "PATH=%GIT_INSTALL_ROOT%\usr\bin;%PATH%"

注意:还有其他方法可以修复它,这对我来说似乎是最简单的方法。

于 2020-07-01T01:57:44.070 回答
0

您确定您的脚本完全有效吗?Bash 中的等式运算符是==,不是=

请参阅Bash 中的字符串比较

于 2020-06-30T23:40:59.737 回答