GNU/Linux >> Linux の 問題 >  >> Linux

ネストされたすべてのディレクトリの下にあるすべてのファイルを、シェルのグロビングで一致させます

具体的には git (gitignore、gitattributes、およびファイル名を取るコマンド) について:パターンにスラッシュが含まれていない場合、 * ワイルドカードは深く一致します。スラッシュが含まれている場合、git は FNM_PATHNAME で fnmatch を呼び出します。 フラグ、および単純なワイルドカードはスラッシュと一致しません。 ** 深く一致させることはサポートされていません。おそらく、この種の深いマッチングは、新しい FNM_STARSTAR でより広くサポートされる可能性があります フラグ、および glibc、gnulib、その他の場所での実装。


find によって返されたすべてのファイルを一覧表示するだけでなく、それらを操作する場合は、それらを xargs にパイプできます。

find <directory> -type f | xargs ls

ただし、これは再帰フラグを持たないコマンドのみです。


Bash 4 では、shopt -s globstar を使用 、および zsh **/* を使用できます これには、隠しファイルを除くすべてが含まれます。 shopt -s dotglob を実行できます Bash 4 または setopt dotglob

ksh では、set -o globstar 有効にします。暗黙的にドットファイルを含める方法はないと思いますが、 **/{.[^.],}* だと思います


Linux
  1. Linuxの基本:Wgetを使用してシェルにファイルをダウンロードする方法

  2. Linuxでファイルとディレクトリを圧縮する方法(例付き)

  3. Linuxですべてのディレクトリのファイルを再帰的に検索する方法

  1. Linuxでネストされたディレクトリ内にファイルをすばやく作成する方法

  2. Linux でのファイルとディレクトリの作成と削除

  3. 文字列を含む名前のすべてのファイルを検索

  1. findコマンドを使用してLinux上のファイルとディレクトリを検索します

  2. 1つのファイルを除くすべてのファイル/ディレクトリを削除しますか?

  3. X よりも古いすべてのファイルを含むディレクトリを検索しますか?