Loading article…
stringsは、ファイルから印刷可能な文字列を抽出するシェルコマンドです。これは、バイナリファイルの内容を分析する際に特に役立ちます。定義上、バイナリファイルには印刷可能なテキストではないデータが含まれていますが、バイナリファイルには印刷可能な文字テキストが含まれていることがよくあります。多くの場合、比較的短いシーケンスがファイル全体に分散しています。バイナリファイルのこれらの部分は、ファイル全体の内容について情報を提供できます。テキストファイル、つまりすべての印刷可能な文字を含むファイルの場合、このコマンドはファイルの内容全体を出力するため、より一般的に使用されるファイル出力コマンド(など)よりも有用性はありません。cat
このコマンドは、 NULL文字で終わる印刷可能な文字のシーケンスを検索しますが、指定された長さ未満、またはデフォルトでは4文字未満のシーケンスは無視します。一部の実装では、印刷可能な文字として認識されるものを決定するオプションが提供されており、これは非ASCII文字やワイド文字のテキストを見つけるのに役立ちます。デフォルトでは、オブジェクトファイルの初期化済みセクションとロード済みセクションからのみ文字列を選択します。その他の種類のファイルの場合は、ファイル全体から文字列を選択します。
このコマンドは、 Unix、Plan 9、Inferno、およびUnixライクなシステムで使用できます。GNUバイナリユーティリティ(binutils )の一部であり、Windowsを含む他のオペレーティングシステムにも実装されています。[ 1 ]
以下のコマンドは、システムのBIOS内で8文字以上の文字列を検索します。
dd if=/dev/mem bs=1k skip=768 count=256 2> /dev/null | strings -n 8