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


10

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

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

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

Answers:


13

您使用的是Windows find命令,而不是cygwin的命令。

如果您键入“哪个发现”,这将很清楚

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

正如评论中指出的那样,另一种方法是编辑bash启动脚本并在那里更改路径。我什至会说这是首选的解决方案,因为我现在发现使用cygwins版本首先会引起问题的情况。


5
这可能不是理想的解决方法;一种替代方法是编辑bash启动文件,以将Cygwin路径添加到系统路径的前面,而不是附加它们。主要区别在于在标准Windows CMD或Explorer Shell中运行命令时是否要首先找到Cygwin版本。
魁北克吉x德

cygwin正在将自己的道路推向全球。所以它很奇怪的OP会收到该错误。
akira 2010年

好点嘎嘎!
dggoldst,2010年

2

在Windows的命令外壳中,我无法运行正确的“查找”,并且PATH调整没有帮助。但这有效:

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

显式路径激发了正确的“查找”,并且无论出于何种原因,仅在以bash运行时有效。


这对我来说效果最好。我正在编写一个可以在各种具有bash的计算机上运行的脚本。有些在\ Windows \ System32之前具有bash路径,但有些在之后。同样,Windows命令“ where find”将按路径顺序显示所有“查找”。
PseudoNoise
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.