たとえば、* .txtという名前のファイルを含むすべてのディレクトリを探したいとします。ただし、出力に重複を含めないでください。どうすればいいですか?
ベストアンサー1
努力する:
find . -type f -name "*.txt" -printf '%h\n' | sort | uniq
仕組みは次のとおりです。
find . -type f -name "*.txt" -printf '%h\n'
- ()で終わるすべてのファイルを見つけて、そのディレクトリ*.txt
(%h
)と改行文字を印刷します。
| sort
- ディレクトリの並べ替え
| uniq
- 重複排除