Linuxコマンド辞典 stringsコマンド(テキスト処理)

ファイルの中から表示可能な文字列を表示する「strings」コマンドの概要と使い方を記載しています。

RHEL Fedora CentOS Vine Deblan Ubuntu Plamo

参考サイト:Man page of INSTALL

概要・使用方法

ファイルから表示可能な文字列を抽出し表示します。ソースコードをなくした、または入手できない場合に、これらお表示可能文字列を見ることで、実行ファイル内で利用できるオプションや変数などを参照し、動作を推測する手がかりにもなります。

ファイルはテキストファイル以外のファイル内容を判断するために利用され、デフォルトでは、4文字以上の長さの文字列を表示します。テキストファイル以外のファイルとは、バイナリファイルやデータファイルを示します。

書式

$ strings [オプション] [ファイル名]

オプション

-f
–print-file-name
行頭にファイル名を出力する
-n 数値
-数値、 –bytes=数値
指定した長さ以上で読める文字列を表示する(デフォルトは4)
@ファイル名stringsのオプションを記述したファイルを読み込む
-a
-、 –all
初期化/ロードされる部分(実行コードや初期化済グローバル変数など)だけでなくファイル全体をスキャンする
-e エンコード
–encoding=エンコード
-w
s(7ビット文字)、S(8ビット文字)、b(16ビットリトルエンディアン)、
l(16ビットリトルエンディアン)、B(32ビットビッグエンディアン)、
L(32ビットビッグエンディアン)などを指定する
–include-all-whitespace改行などの空白も併せて表示する(スペースとタブはこのオプションを使わなくても表示される)

バイナリファイルの中から文字列を表示

$ strings ファイル名

実行結果

[sunarin@localhost work]$ strings /bin/ls | head -n 20
/lib64/ld-linux-x86-64.so.2
        _k+
libselinux.so.1
__gmon_start__
_init
fgetfilecon
freecon
lgetfilecon
_fini
libcap.so.2
cap_to_text
cap_free
cap_get_file
libacl.so.1
acl_get_entry
acl_get_tag_type
acl_extended_file
libc.so.6
fflush
strcpy
[sunarin@localhost work]$