2016-03-03 52 views
1

find命令让我喜欢提取和存储输出的一部分与shell脚本

a/b/1.xml 
a/1.xml 
c/d/fd/fg/2.xml 

我需要写一个bash命令,以便能够存储在一个路径最后/后才数据输出。

find . -name "*.xml" >>mayflies.txt给我的完整路径和存储它,但我只需要.xml部分来存储。

我该怎么做?我正在尝试诸如cut之类的选项,但之后,由于可变模式,我迷失于如何使其工作。

回答

1

您可以rev结合cut获得你想要的东西:

find . -name "*.xml" | rev | cut -d'/' -f1 | rev >> mayflies.txt 
0

试试这个:

find . -name '*.xml' -exec basename '{}' \; 

,而不是只打印结果,它执行UNIX命令basename打印的东西,发现唯一的文件名。

相关问题