在shell脚本中提取特定字符串
我有一个文件maned fil1.txt,文件内容如下:-在shell脚本中提取特定字符串,shell,Shell,我有一个文件maned fil1.txt,文件内容如下:- ./pub/index.html ./manifest.bak ./manifest.rel ./ns/GSCT_ASNShipmentIn
./pub/index.html ./manifest.bak
./manifest.rel ./ns/GSCT_ASNShipmentInfo_E1/node.idf
./ns/GSCT_ASNShipmentInfo_E1/E1/svcReprocessASNManifest/flow.xml.bak
./ns/GSCT_ASNShipmentInfo_E1/E1/svcReprocessASNManifest/node.ndf
./ns/GSCT_ASNShipmentInfo_E1/E1/svcReprocessASNManifest/flow.xml
./ns/GSCT_ASNShipmentInfo_E1/E1/svcUpdateVR01ForOP/flow.xml.bak
./ns/GSCT_ASNShipmentInfo_E1/E1/svcUpdateVR01ForOP/node.ndf
./ns/GSCT_ASNShipmentInfo_E1/E1/svcUpdateVR01ForOP/flow.xml
我想提取我在最后有flow.xml的所有行,并将其保存到不同的文件中。
输出文件应为:--
只需使用
grep
:
$ grep 'flow\.xml$' file > output
$ cat output
./ns/GSCT_ASNShipmentInfo_E1/E1/svcReprocessASNManifest/flow.xml
./ns/GSCT_ASNShipmentInfo_E1/E1/svcUpdateVR01ForOP/flow.xml
$
表示行尾,因此这是检查以flow.xml
结尾的所有行。另外,
被转义以表示文字点,而不是表示“任何字符”(anycharacter)的正则表达式。我认为您应该在模式中转义
字符。现在它还将匹配以flowaxml
,flowbxml
等结尾的字符串。
$ grep 'flow\.xml$' file > output
$ cat output
./ns/GSCT_ASNShipmentInfo_E1/E1/svcReprocessASNManifest/flow.xml
./ns/GSCT_ASNShipmentInfo_E1/E1/svcUpdateVR01ForOP/flow.xml