仙台の山奥で自転車に乗ったり転んだり

愛車の GIOS でサイクリングしたりポタリングしたり、それをブログに記録してみたり。ロードバイクや自転車や坂のことを書いてみたり。ときたまプログラムのことを忘れないようにメモってみたり。

ファイルへのリンクを探すための手段

比較的大きな規模のサイトでコンテンツを削除するの時に、どこかにリンクが残っている可能性がる場合の検索方法がいつもよく分からない。
findとgrepで大雑把に探して、その結果から精査しているけど効率が激しく悪いと思う。

cd /usr/local/apache/
find docs/ -type f -exec grep "foo\.html" {} /dev/null \; > ~/result.txt

ちなみに複数ファイルを同時に検索するために「|」を使うためには拡張正規表現grepする必要あり(-Eオプション)。しかもダブルクォーテーションだと上手く動作しなくて、シングルクォーテーションでなければダメなよう。

find docs -type f -exec grep -E '(foo_1|foo_2|foo_3)\.html' {} /dev/null \; > ~/result.txt