
No.1ベストアンサー
- 回答日時:
該当数が行数で、単純な文字列の検索でよければ、
findコマンド
が使えると思います。
---------------------------------------------------------------
コマンドプロンプトを起動し、*.logのフォルダへ移動したとして、
コマンドプロンプト>find /C "検索文字列" *.log
ファイル(kensaku.txt)に落すには、
コマンドプロンプト>find /C "検索文字列" *.log > kensaku.txt
英語の大文字と小文字の区別をしないで検索するには、
コマンドプロンプト>find /I /C "検索文字列" *.log > kensaku.txt
---------------------------------------------------------------
たか
この回答への補足
2008/02/02 補足
そういえば、検索文字列の抽出に正規表現を組み込む事って出来ないですかね?
findstr では find /C のような表示をさせるオプションが無いようですね。
No.3
- 回答日時:
・ DOSは、UNIXを見習って作っているので、UNIX・Linuxでの便利な機能を利用できます。
UNIX・Linuxの弟分といったところでしょうか。
・ 空行を含んでいなければ、もっとスマートに
>findstr /R ... | find /C /V "確実に含まれていない文字"
は
>findstr /R ... | find /C /V ""
でよいようです。つまり
>find ""
で空行を検索してくれることになり
>find /V ""
は空行以外すなわち全部を検索してくれることになります。
今回は、検索結果ですから最適でしょう。
・ Cygwinは大賛成です。grepで一発ですね。
ただし、UNIX・Linux未経験者だとちょっと重いかもしれませんが、
今後LINUXを使っていこうと言う方ならお勧めですね。
No.2
- 回答日時:
findstrコマンドプロンプトが追加されているのは知りませんでした。
ありがとうございます。
DOSの時代の終わりのころからほぼすべての簡易ヘルプは
/?
に統一されています。
コマンドプロンプト>findstr /?
-------------------------------------------------------------------------------------
ファイルから文字列を検索します。
FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P]
[/F:ファイル] [/C:文字列] [/G:ファイル] [/D:ディレクトリ一覧]
[/A:色属性] [/OFF[LINE]] 文字列 [[ドライブ:][パス]ファイル名[ ...]]
/B 行の先頭にあるパターンを検索します。
/E 行の末尾にあるパターンを検索します。
/L 検索文字列をリテラルとして使用します。
/R 検索文字列を正規表現として使用します。
/S 現在のディレクトリとすべてのサブディレクトリから一致する
ファイルを検索します。
/I 検索するときに大文字と小文字を区別しません。
/X 完全に一致する行を出力します。
/V 一致しない行のみを出力します。
/N 一致する各行の前に行番号を出力します。
/M ファイルに一致する行があるときに、ファイル名のみを出力します。
/O 一致する各行の前に文字オフセットを出力します。
/P 印刷不可能な文字を含むファイルをスキップします。
/OFF[LINE] オフライン属性が設定されたファイルをスキップしません。
/A:属性 2 桁の 16 進数で色属性を指定します。"color /?" を参照してくだ
さい。
/F:ファイル 指定したファイルからファイル一覧を読み取ります (/ を指定する
とコンソール)。
/C:文字列 指定された文字列をリテラル検索文字列として使用します。
/G:ファイル 指定されたファイルから検索文字列を取得します (/ を指定する
とコンソール)。
/D:ディレクトリ
セミコロンで区切られた検索されるディレクトリ文字列テキストの
一覧を検索します。
[ドライブ:][パス]ファイル名
検索するファイルを指定します。
複数の文字列を検索する場合には、引数 /C を使わず、各文字列をスペースで区切り
ます。
たとえば、FINDSTR "hello there" x.y と指定した場合は、ファイル x.y で "hello"
または "there" が検索されます。
これに対して、FINDSTR /C:"hello there" x.y と指定した場合はファイル x.y で
"hello there" が検索されます。
正規表現クイック リファレンス:
. ワイルドカード: 任意の文字
* 繰り返し: ゼロ個以上の直前の文字またはクラス
^ 行位置: 行頭
$ 行位置: 行末
[class] 文字クラス: セットの任意の 1 文字
[^class] 逆クラス: セット以外の任意の 1 文字
[x-y] 範囲: 指定した範囲の任意の文字
\x エスケープ: メタ文字 x のリテラル使用
\<xyz 単語位置: 単語の先頭
xyz\> 単語位置: 単語の終わり
FINDSTR の詳細な正規表現に関しては、オンライン ヘルプのコマンド リファレンスを
参照してください。
-------------------------------------------------------------------------------------
/R 検索文字列を正規表現として使用します。
が使えますね。
-------------------------------------------------------------------------------------
>>>findstr では find /C のような表示をさせるオプションが無いようですね。
こういうときはパイプを利用しましょう。
>findstr /R ... | find /C ...
-------------------------------------------------------------------------------------
ここで、ひと工夫が要ります。(要望に完璧ではないかも知れませが)
・ もし、検査結果すべてに共通した文字列があれば、
>findstr /R ... | find /C "共通した文字列"
・ もし、検査結果すべてに確実に含まれていない文字があれば、
>findstr /R ... | find /C /V "確実に含まれていない文字"
--------
たか
コマンドプロンプトでもパイプ機能が使えるんですね。
勉強になります。ありがとうございます。
ただ、なかなか複雑になってきたので、
Cygwinなんかを入れた方が早いんじゃないかって気になってきました…。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- フリーソフト テキストファイル内を検索したい 1 2022/06/01 08:33
- Excel(エクセル) エクセルのファイルにリンクを貼る方法 4 2023/06/30 11:09
- Visual Basic(VBA) 特定の文字を簡単な操作で半角スペースに変換するか削除したい 2 2022/11/01 10:35
- Excel(エクセル) エクセル関数の変わった使い方 3 2022/05/13 17:12
- Excel(エクセル) Excelでの検索結果を含む行だけを表示させたい 5 2023/03/10 17:08
- その他(プログラミング・Web制作) テキストエディタで複数行にわたる文字列の行頭に番号を振る方法 4 2023/03/11 12:57
- Excel(エクセル) 【Excel】指定した文字列に該当する行を重複しないようにリスト 3 2022/03/30 12:27
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/21 09:42
- Visual Basic(VBA) excelにて、特定の列に数字入力してあれば、入力してある行コピーして 別ファイルに張り付ける 2 2022/08/11 05:33
- Visual Basic(VBA) vbaサブフォルダーをワイルドカードで取得したい 2 2022/11/15 08:04
このQ&Aを見た人はこんなQ&Aも見ています
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
パソコンに詳しい方教えて下さ...
-
Windows上のファイル操作の履歴...
-
Batファイルでhostsを追加したい
-
複数のテキストファイルの特定...
-
sftp時の公開鍵認証
-
別のフォルダにファイルを移動...
-
caclsコマンド実行時のサーバ負荷
-
access_log
-
バッチファイルでディレクトリ...
-
アップデータを作成するツール...
-
proftpdで共有ロックがしたい
-
CSVファイルのマッピング処理の...
-
Zipファイルをエクセルに指定変...
-
隠しファイルとZip圧縮について
-
jarファイルが開けない
-
どうしたらいいか教えて下さい。
-
FTPの更新を定期チェックして通...
-
指定ファイルをFTPで自動アップ...
-
ARCserveで複数の媒体にバック...
-
TCP/IP のパケットの分断と結合...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
パソコンに詳しい方教えて下さ...
-
Windows上のファイル操作の履歴...
-
Zipファイルをエクセルに指定変...
-
バッチファイルでディレクトリ...
-
別のフォルダにファイルを移動...
-
ipadで社内ネットワークに接続
-
どうしたらいいか教えて下さい。
-
Lhaplusが発したと、みられるエ...
-
SystemWalker Centric Manager...
-
複数のテキストファイルの特定...
-
グローバルIPアドレスを取得し...
-
Batファイルでhostsを追加したい
-
CSVファイルのマッピング処理の...
-
ffastun.*って何ですか?
-
コンピュータウイルス:感染源特定
-
データベースファイル 機種変の...
-
xcopyの/dオプションについて
-
指定ファイルをFTPで自動アップ...
-
robocopyの失敗について
-
フォルダ内ファイルの自動削除化
おすすめ情報