将文件夹路径作为参数从Windows批处理文件传递到Cygwin bash脚本



我正在尝试在shell脚本中执行以下命令:

find "$1" -type f -name "*.DAT" -exec sed -e 's/.*/"&"/' {} ';' -exec xargs wc -l ';'

该命令应该从Windows批处理文件运行,如下所示:

set arg1=%1
C:cygwin64binbash.exe row_count.sh %arg1%

其中row_count.sh是包含上述查找命令的 shell 脚本。用户应该将文件夹路径传递给批处理文件,然后应该将文件夹路径参数传递给 shell 脚本中的 find 命令。

但是我收到以下错误:

FIND: Invalid Switch

请帮忙。

FIND: Invalid Switch是来自Windows Find而不是来自Cygwin One的错误消息。

所以你需要使用登录外壳来正确设置 PATH

C:cygwin64binbash.exe -l row_count.sh %arg1%

另外一定要放在第一排row_count.sh#!/bin/bash

最新更新