--.--.--

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

2006.04.07

第47夜

ある場所配下のファイルを対象にしたファイル内容の検索について・・・。

Windosのエクスプローラでディレクトリを指定して検索をすると、ある程度の検索は可能ですが、開発時に必要な検索方法としては弱いです。

ファイルの検索等はWindowsよりUNIX系の方が色々便利ですね。
cygwinというツールを使用すると、Windows環境で擬似UNIX環境が使えるので、下記のようなUNIXコマンドを使用できます。

find . -type f | xargs grep CS | grep equals > 1.log

find:ファイル検索のコマンドです。
.:カレントディレクトリを表します。つまり現在いるディレクトリです。
-type f:ファイル名を出力するオプションです。
|:|の左のコマンドの結果を|の右のコマンドに引き渡します。
xargs:xargsの右のコマンドに引数として引き渡します。
grep:ファイルの内容を検索するコマンドです。
CS, equals:検索キーです。
>:リダイレクトといって、右で指定したファイルに左のコマンドの結果を書き込みます。

つまり上のコマンドは下記のような検索をする事ができます。
現在のディレクトリ配下のファイルの内、CSとequalsが両方含まれている行を1.logに書き込む。

CSとequalsが両方含まれている行っていうのが、けっこうなポイントです。
通常の検索ではある検索キーが含まれているファイルを調べる事しか行えないですから。

注意としてUNIX系のコマンドはdosと違って、shellの種類(bsh, csh, ksh等)によって微妙に異なるので、環境によっては少し変更する必要があるかもしれません。
この記事へのトラックバックURL
http://hexagram.blog41.fc2.com/tb.php/48-d75194b8
この記事へのトラックバック
この記事へのコメント
LINKで たねひこ「さん」が追加されてる、、、(´ー`)

前、たしか呼び捨てだったよね(*´∀`)
Posted by みきにょ at 2006.04.07 15:01 | 編集
中々鋭いですね(笑)。

今更さんづけもないだろうと思ってたんですが、まぁやはり必要かなと思い直しまして(笑)。
Posted by hexagram at 2006.04.07 15:17 | 編集
うむ

その心がけ、よしw
Posted by naguri at 2006.04.08 10:06 | 編集
管理者にだけ表示を許可する
 
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。