文字列を含むファイルを見つけるにはどうすればいいですか?

文字列を含むファイルを見つけるにはどうすればいいですか?

私は試した:

grep "$1-2400000" /media/linux/DATADISK/flashka/

長い間実行されていて何もしません。別の方法はありますか? ターミナルでこれを行う必要はありません。

答え1

「すべてのファイル」に一致するが欠落している-rため、おそらく一重引用符を使用する必要があります。

grep -r -l -F '$1-2400000' /media/linux/DATADISK/flashka/

を使用すると-l、grep はファイル名のみを表示し、ファイル内の一致は表示しません。 は -F正規表現ではなく、固定文字列を grep します。

ファイル名にスペースやその他の特殊文字が含まれている場合は、find代わりに以下を使用することをお勧めします。

find /media/linux/DATADISK/flashka/ -type f -exec grep -l -F '$1-2400000' {} \;

関連情報