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

ファイル内の複数の文字列のGrepを実行し、サイズ順にファイルを一覧表示しますか?

.txtがたくさんあるフォルダにいます ファイル、両方のstringAを含むすべてのファイルを検索したい およびstringB (必ずしも同じ行にある必要はありません)次に、これらのファイルをサイズの順に(小さいものから大きいものへ)リストします

次のことを試しましたが、機能しません:

ls -lS | for f in *; do grep -q stringA $f && grep -l stringB $f; done

誰か良い考えがありますか?

承認された回答:

GNU findを使用できます :

find . -maxdepth 1 -exec grep -q stringA {} ; -exec grep -q stringB {} ; 
        -printf '%10s %pn' | 
    sort -n

Linux
  1. コンソールで大きなファイルをチェックする方法

  2. ファイル内の単語をGrepしてから、ファイルをコピーしますか?

  3. そのファイル名の複数のバリエーションが同じディレクトリに一緒に存在するファイルを検索しますか?

  1. Linux – Linuxで現在の日付のファイルを取得しますか?

  2. ls と grep を使用して実行可能ファイルを見つける

  3. Linux で複数のファイルを見つけて名前を変更する

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

  2. Linuxで最大のファイルとディレクトリを探す

  3. Linux で複数のファイル内の文字列を検索する