Cygwin 编写perl脚本将扩展名为.ext的文件名复制到列表中

Cygwin 编写perl脚本将扩展名为.ext的文件名复制到列表中,cygwin,Cygwin,我需要搜索目录C:\vehicles中的所有文件。我想打开每个文件并复制包含以下任一词的整行:make、model或year 这就是我所拥有的,但它不起作用。我对这一切还是新手 $grep-rE-pattern“(制造|车型|年份)”cygdrive/c/vehicles/ 非常感谢您的帮助,因为如果明天我还不明白的话,我将不得不手工完成所有工作。试试这个: grep -rE "make\|model\|year" /Directory/To/Search/ > /Path/To/file

我需要搜索目录
C:\vehicles
中的所有文件。我想打开每个文件并复制包含以下任一词的整行:
make
model
year

这就是我所拥有的,但它不起作用。我对这一切还是新手

$grep-rE-pattern“(制造|车型|年份)”cygdrive/c/vehicles/

非常感谢您的帮助,因为如果明天我还不明白的话,我将不得不手工完成所有工作。

试试这个:

grep -rE "make\|model\|year" /Directory/To/Search/ > /Path/To/file_to_save_in.txt
>将输出(即匹配行)定向到指定的文件。或者,如果您想先对其进行测试,然后将输出定向到命令行:

grep -rE "make\|model\|year" /Directory/To/Search/

因此,如果目录是c:\vehicles,我想写入的文件是c:\log中的vehicles.txt,那么我会输入:grep-rE“make | model | year”/cygdrive/c/vehicles>/cygdrive/c/vehicles.txt我对cygwin不太熟悉,但你把它放到了一个看起来像是c:\vehicles.txt的文件中。如果你想把它放到c:\log\vehicles.txt中,试试:grep-rE“make | model | year”/cygdrive/c/vehicles/>/cygdrive/c/log/vehicles.txt。另外,试试:grep-rE“make | model | year”/cygdrive/c/vehicles/以确保你真的得到了匹配它对我不起作用。perl中是否有类似的替代方法?请将Cd放入vehicles目录,然后尝试以下方法:grep-rE“make | model | year”。(包括圆点)你能从一个文件中删除任何内容吗?