1行のコマンドを使用して、指定された各ディレクトリ(またはサブディレクトリ)を見つけて、bin
その下のすべてのファイルのリストを印刷しようとしています。ただし、その下にあるディレクトリ名も印刷しません。
これを達成するためにいくつかの異なる方法を試しましたが、これまで何も効果がありませんでした。
find ~ -type d -name "bin" -exec ls '{}' ';' | grep -v /
これをテストしましたが、ファイルが一覧表示されましたが、binの下のすべてのディレクトリも一覧表示されました。したがって、私のディレクトリの下に次のサブディレクトリがある場合bin
:bin
~/home/
~/home/bin
file1.txt
~/home/bin/bin
file2.txt
出力は次のとおりです。
bin
file1.txt
file2.txt
find ~ -type d -name "bin" -exec ls -f '{}' ';'
ls -f
これはファイルだけがリストされていることを読みましたが、残念ながらディレクトリもリストされますbin
。..
.
ではどうすればいいですか?
ベストアンサー1
を使用するには、-path
以下を試してください。
find ~ -path '*/bin/*' -type f
これはそれ自体リストされていないので、両方をbin
取得するには、次の手順を実行します。
find ~ \( -path '*/bin/*' -type f \) -o \( -name bin -type d \)