找到(1):CygWin下的“参数格式不正确”

时间:2012-05-31 18:55:46

标签: bash shell command-line cygwin

我正在尝试从源头构建Bochs。因此,我写了一个配置脚本。我没有从头开始编写脚本 - 它基于Bochs tarball中的.conf.win32-vcpp sh脚本。导致问题的脚本部分是超出原始 Nochs tarball 没有任何更改 - 我没有写那部分。

我的问题:

每次执行sh脚本时,都会发生以下错误:

[...]
config.status: creating host/linux/pcidev/Makefile
config.status: creating config.h
config.status: creating ltdlconf.h
config.status: ltdlconf.h is unchanged
FIND: Parameterformat falsch

* Parameterformat falsch 表示参数格式不正确

但我不需要执行大厅脚本。那个rub片段就足够了:

sh-4.1$ find -name Makefile
FIND: Parameterformat falsch

* Parameterformat falsch 表示参数格式不正确

我的问题:

  • 该脚本片段有什么问题:find . -name Makefile?有什么想法吗?
  • 如何重写代码的这一部分才能使其正常工作?

我的剧本:

#!/bin/sh

set echo

./configure --target=pentium-windows \
            --enable-sb16 \
            --enable-ne2000 \
            --enable-all-optimizations \
            --enable-cpu-level=6 \
            --enable-x86-64 \
            --enable-pci \
            --enable-clgd54xx \
            --enable-usb \
            --enable-usb-ohci \
            --enable-show-ips \
            --enable-disasm \
            --enable-iodebug \
            --enable-logging \
            --enable-debugger-gui \
            --disable-readline \
            --without-x \
            --with-win32 \
            --with-rfb \
            --with-nogui \
            --with-wx

unset echo

# Fix up all makefiles so that nmake can handle them.

- > 狗被埋的地方:

for i in `find . -name Makefile`; do
  echo Removing curly brackets in $i for NMAKE.
  mv $i $i.tmp
  sed -e 's/{/(/g' -e 's/}/)/g' < $i.tmp > $i
  rm -f $i.tmp
done

我的环境:

我不知道这是否重要,但我没有使用普通的bash。我使用 cygwin sh命令(Win64)提供的shell。

感谢。

1 个答案:

答案 0 :(得分:10)

确保您的Cygwin安装包含findutils包,并且Cygwin的findPATH中的第一个(在原生Windows之前)。

如果find --help返回FIND: Paramater format not correct(或您的本地化等效文件),这肯定表明它是Windows,而不是目前正在使用的Cygwin。