一時ファイルを使用せずに、現在のディレクトリ内の各ファイルで正規表現を検索するシェルスクリプトを作成しようとしています。
もともと、私は一時ファイルを使用してこれを保存しecho * | sed 's/ /\n/g'
、このファイルの各行をループして、cat
それぞれを使用して式をgrepし、出力の行を数えました。一時ファイルの検索に問題があり、変数または一時ファイル以外の方法を使用してすべてを実行できるかどうか疑問に思っていました(一時ファイル用に別のディレクトリを作成する必要もありません)。
変数で私が抱えていた問題は、変数の値をの出力に設定した後echo * | sed 's/ /\n/g'
、ファイルから式の数を取得できるように、各行をループする方法がわからなかったことです。
私は次のことを機能させたいだけです(式をハードコーディングします):
% ls
% file1 file2 file3
% ./countMost.sh
% file2(28)
% ls
% file1 file2 file3
file2に式のインスタンスが最も多いことを意味します(そのうち28個)。