2016-09-01 9 views
2

にuniqeたファイルのファイルパスを取得します。私はフォルダ構造以下のbashいる

/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のか、上記のシナリオでは、完全なパスを印刷するための他のコマンドはありますか?

答えて

5

あなたはawkを使用することができます。

awk -F/ '!seen[$NF]++' file 

/a/b/c/d/e.txt 
/a/b/m.txt 

seenは(最後のフィールド)$NFとしてキーを持つ連想配列です。

関連する問題