特定の文字、たとえばA/aで始まるディレクトリ(およびそのサブディレクトリ)内のすべてのファイルをリストするbashスクリプトを書く必要があります。ファイルの内容がその名前ではなく文字で始まる場合、どうすればできますか?現在のフォルダ内のパターン^[A|a]
ため内容がBashの文字で始まるファイルを一覧表示する
1
A
答えて
1
grep -rn "^[A|a]" * | awk -F: '$2==1{print $1}'
grepを再帰的に(-r
)。見つかった場合(最初の行にある必要はありません)、grepの出力はfilname:linenumber:match
のようになります。フィールドセパレータとしてawk
と:
を使用し、ライン番号が1
(最初の行、つまりファイルの先頭に一致する場合)の場合は、ファイル名の1st
フィールドを出力します。 grep出力には、-n
オプションを指定しているので、行番号が含まれます。ただバッシュと**/*
を有効にするglobstar
オプション(shopt -s globstar
)で
2
:
for file in **/*; do [[ $(< "$file") == [Aa]* ]] && echo "$file"; done
これは、すべてのファイル(およびディレクトリ)をループ再帰的にチェックし、その内容はA
またはa
で始まる場合。そうであれば、ファイル名が印刷されます。
実際にはディレクトリを[Aa]*
と比較しようとしますが、$file
がディレクトリの場合は、$(< "$file")
の終了ステータスが正常ではないことを返します。
また、Bashsimsせず、find
を使用して:
find . -type f -exec sh -c '[ "$(head -c 1 "$1" | tr A a)" = a ]' _ {} \; -print
これは、ファイル(-type f
)のためにフィルタリングし、(潜在的な大文字を移調、ファイルの最初の文字を取得し、テスト"$(head -c 1 "$1" | tr A a)" = a
が実行されているサブシェルを生成しますA
a
と比較すると、a
と比較し、終了ステータスが正常であればファイル名を出力してください。
関連する問題
- 1. Pythonで.appファイルの内容を一覧表示する方法
- 2. 特定の文字で始まるmysqlテーブルを一覧表示する
- 3. bashで100Kを超えるファイルを一覧表示する
- 4. ベクトルの内容をGtkで一覧表示する+
- 5. androidの内容を保存して一覧表示する
- 6. BIRT - ページ変数の内容を一覧表示する方法
- 7. 変数内のファイルパターンを使用してファイルを一覧表示する[BASH]
- 8. 変数の内容を別のファイルに一覧表示する(unix)
- 9. Bashスクリプトは文字列でファイルの内容をテストします。
- 10. テーブル内のファイルの一覧を表示
- 11. PHPがディレクトリ内のファイルを一覧表示するために
- 12. ファイル内の画像ファイルのみを一覧表示する
- 13. .aファイル内のファイルを一覧表示する方法
- 14. ファイルの内容を並べて表示するbash
- 15. ディレクトリの内容を一覧表示するスクリプトを作成しますか?
- 16. WindowsでUnicode文字を含むディレクトリを一覧表示する
- 17. が8.5 Webサーバーがこのディレクトリの内容を一覧表示しませ
- 18. ファイルの一覧を表示
- 19. FAT:ディレクトリ内のすべてのファイルを一覧表示する
- 20. ディレクトリ内のすべてのファイルを一覧表示するPython
- 21. フォトライブラリ内のすべてのgifファイルを一覧表示する
- 22. MXDファイル内のレイヤーのフィールド名を一覧表示する
- 23. 特定のフォルダ内のファイルを一覧表示する
- 24. 端末のフォアグラウンドプロセスグループ内のすべてのプロセスを一覧表示するBashスクリプト
- 25. Dropbox - ディレクトリ内のファイルを一覧表示する方法
- 26. サブフォルダ内のファイル名を一覧表示する
- 27. ディレクトリ内のファイルを一覧表示する方法
- 28. フォルダ内のファイルを一覧表示する
- 29. ディレクトリ内のファイルのみを一覧表示しますか?
- 30. 姓が "L"で始まる従業員を一覧表示する
あなたはほぼ3年間ここにいましたが、私たちはあなたの仕事をしていないことを知るべきですあなたのために ;) –