OSXのディレクトリとサブディレクトリにあるすべてのPDFファイルを見つけたいです。
たとえば、これは多くの結果を生成するため、サブディレクトリにいくつかのPDFがあることを知っています。
ls myfolder/pdfs/*.pdf
私のすべてのインターネット検索は私が望むものを示していますが、ls -R
結果はありません。
ls -R *.pdf
私は何が間違っていましたか?
次のような結果があります。
ls -R | grep pdf
ただし、ファイルのフルパスを表示できないため、あまり役に立ちません。
ベストアンサー1
ls -R *.pdf
ls
一致するコンテンツは再帰的に呼び出されます*.pdf
(現在のディレクトリに一致するものがない場合は*.pdf
結果が得られず、存在する場合はディレクトリがディレクトリの場合にのみその結果に再帰されます)。目的の結果ではなく、正規表現に一致するすべてを結果にls -R | grep pdf
表示します。ls -R
pdf
これがあなたに必要なものです:
find myfolder -type f -name '*.pdf'
これにより、ファイル名がパターンと一致するディレクトリ-type f
内または下にあるすべての一般ファイル()のパス名が提供されます。シェルからモードを保護するには、モードを引用する必要があります。myfolder
*.pdf
zsh
シェル(最近のmacOSのデフォルトシェル)を使用する:
print -rC1 myfolder/**/*.pdf(.ND)
myfolder
これにより、名前で終わるディレクトリ内または下のすべての一般ファイルのパス名が単一の列に印刷されます。.pdf
一致には隠された名前が含まれます。 glob修飾子のandはシェルのandシェルオプション設定に対応します(ただし、この単一のワイルドN
カードパターンのみ)、ドットはパターンが通常のファイル(ディレクトリなどではない)とのみ一致するようにします。D
nullglob
dotglob
bash