使用sed从文件中删除不匹配模式的行

时间:2015-11-03 19:49:12

标签: sed

我使用

生成目录(子目录和所有文件)中所有内容的列表
ls -R $DIRPATH | awk '/:$/&&f{s=$0;f=0} /:$/&&!f{sub(/:$/,"");s=$0;f=1;next} NF&&f{ print s"/"$0 }' > filelist

我想删除所有未在特定文件扩展名中结尾的文件,例如.h。我正在尝试用

sed -ne '/.h$/p' filelist > filelist_h

但这允许C:/dev/boost/boost_1_59_0/boost/graph这样的文件。如何使用.h而不是h

1 个答案:

答案 0 :(得分:3)

find是您正在寻找的工具:

find "$DIRPATH" -type f -name '*.h'