fossBytesは2018年8月25日(米国時間)、記事「Strings Command In Linux: A Simple But Very Useful Tool」において、stringsコマンドの使い方を伝えた。stringsコマンドはバイナリファイルなどから印字可能な文字列だけを抜き出して表示するコマンド。バイナリファイルの中身を調べる目的などで利用できる。紹介されている。

stringsコマンドの主な使い方は次のとおり。

stringsコマンドの使い方その1

strings バイナリファイルパス

stringsコマンドの使い方その2

strings バイナリファイルパス | grep キーワード
  • Ubuntu 18.04 LTS /bin/catの中身をlessで表示させた場合

    Ubuntu 18.04 LTS /bin/catの中身をlessで表示させた場合

  • Ubuntu 18.04 LTS /bin/catの中身をstringsで表示させた場合(開業は空白に変換)

    Ubuntu 18.04 LTS /bin/catの中身をstringsで表示させた場合(開業は空白に変換)

  • Ubuntu 18.04 LTS /bin/catからlicenseという文字列に関連する部分を抜き出して表示

    Ubuntu 18.04 LTS /bin/catからlicenseという文字列に関連する部分を抜き出して表示

UNIX系のオペレーティングシステムにはテキストデータを処理するためのコマンドが多く同梱されている。こうしたコマンドはバイナリファイルは扱いの対象としていないことが多い。stringsコマンドを利用することでバイナリデータからテキストデータを抜き出すことができ、以降はテキスト処理系のコマンドで処理することができる。

stringsコマンドを利用することで、バイナリ形式実行ファイルのライセンスを推測したり、環境変数やオプションなどを調べたりといったこともできる。あくまでも簡易的な対処となるが、手軽に利用することができるコマンドとして知っておくと便利。