find 命令似乎在 cygwin 中不起作用

find 命令似乎在 cygwin 中不起作用

当我尝试在 cygwin 中运行 find 命令时,我不断收到错误

“查找:参数格式不正确”

但是,同样的命令在 Linux 上运行。这是怎么回事?

答案1

您正在使用 Windows 查找命令,而不是 cygwin 的。

如果你输入“which find”,这一点就会很清楚

要修复此问题,请编辑路径(系统属性 -> 高级 -> 环境变量 -> 系统变量 -> 路径),并将 cygwin 的条目移到路径的前面。(一种简单的方法是复制整个路径,将其粘贴到记事本中,在那里编辑,然后再粘贴回来)。

正如评论中指出的那样,另一种方法是编辑 bash 启动脚本并在那里更改路径。我甚至会说这是首选解决方案,因为我现在发现了一个案例,其中 cygwins 版本首先导致问题。

答案2

在 Windows 命令 shell 中,我无法运行正确的“find”,PATH 调整也无济于事。但这个有效:

bash
/usr/bin/find . -iname blahblah*
exit

显式路径启动了正确的“查找”,并且无论出于什么原因,仅在 bash 中运行时才有效。

相关内容