2017-06-30 4 views
-1

私はLinuxには新しく、ID番号は.bz2ファイル内で検索しようとしています。しかし、私は正しいコマンドをオンラインで見つけることはできません。私はbzgrepを使う必要があると信じています。.bz2ファイルのIDを検索するコマンドは何ですか?

私は、ファイルに「123456」を探したいBulk9876.bz2

どのように私は、このコマンドを構築するのでしょうか?

+0

'bzgrep 123456 Bulk9876.bz2'を試しましたか? – twalberg

+0

私はbzgrep 9876 Bulk9876.bz2(またはファイル名の何か)を実行すると何も返されません。 **バイナリファイル(標準入力)は**にマッチします。 実際にファイル内を検索しているとは思われません。 –

+0

あなたは 'bzgrep'の非標準版を持っているか、実際のものをマスクする別名/関数/スクリプトを持っているように見えます。 'type bzgrep'はあなたに何を伝えますか? – twalberg

答えて

0

あなたはおそらくちょうどそれがテキストとしてそのデータを解析しても大丈夫だとはgrepを伝える必要があります:

bzgrep -a 123456 Bulk9876.bz2 

あなたが圧縮されたデータを表示しようとしている(というよりも、それを解凍し、解凍されたデータを検索する)している場合、ちょうどgrep -a …を使用してください。

それ以外の場合は、ファイル内に目的の文字列が存在することを確認することもできます。 bunzip2 itとgrep -a圧縮解除されたファイル。それがうまくいけば、問題はあなたのbzgrepインスタンスにあります(これはbunzip2と同じ解凍ライブラリを使うべきなので奇妙です)。

+0

このコマンドは何も返さなかったため、ファイルを解凍して解凍することができません。私はアクセスが制限されています。 –

+0

ファイルを読むことができませんか?私はフォローしていません。 'ls -lh Bulk9876.bz2;の出力は何ですか? id'? bzgrepコマンドが全く出力を出さなかった場合、それはファイルを正常に走査し、与えられたパターン( '123456')を見つけられなかったことを意味します。そのコマンドの後に 'echo $?'を実行するだけです。私は '1'の応答を期待していますが、数値が高いということはエラーがあったことを意味します(そして、「0」は一致があったことを意味します)。 –

関連する問題