やりたいことを実行するためのスクリプトを取得するのに問題があります。
ファイルでパターンを検索し、そのパターンの行番号とインスタンスを出力するスクリプトがあります。
見つかった行を印刷する前に、最初にファイル名を印刷する方法を知りたい
また、これを呼び出して 2 つの引数を渡す新しいスクリプトを作成する方法も知りたいです。
最初の引数は grep のパターンで、2 番目の引数は場所です。
場所がディレクトリの場合、ループし、スクリプトを使用してディレクトリ内のすべてのファイルのパターンを検索します。
#!/bin/bash
if [[ $# -ne 2 ]]
then
echo "error: must provide 2 arguments."
exit -1
fi
if [[ ! -e $2 ]];
then
echo "error: second argument must be a file."
exit -2
fi
echo "------ File =" $2 "------"
grep -ne "$1" "$2"
これは私が使用しているスクリプトで、新しいスクリプトを呼び出す必要があります。同様の質問をすることで多くの助けが得られましたが、まだ迷っています。-dコマンドを使用してディレクトリをテストし、「for」を使用してコマンドをループできることはわかっていますが、正確にはどのようにうまくいきませんか。