我有以下文件夹结构:
/a/b/c/d/e.txt
/a/b/c/e.txt
/a/b/m.txt
我希望输出为
/a/b/c/d/e.txt
/a/b/m.txt
e.txt的任何路径都可以。到目前为止,我能够过滤掉唯一的文件,但我失去了完整路径的价值。
find . -name '*.txt' | awk -F "/" '{print $NF}' | uniq
输出
e.txt
f.txt
有没有办法使用awk,sed或任何其他命令打印上述场景中的完整路径?
答案 0 :(得分:5)
您可以使用awk:
awk -F/ '!seen[$NF]++' file
/a/b/c/d/e.txt
/a/b/m.txt
seen
是一个关联数组,键为$NF
(最后一个字段)。