GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu で string コマンドを使用する方法

バイナリ ファイルまたは実行可能ファイルをチェックして人間が読めるテキストを抽出することは、私たちの日常生活では行うことではありませんが、求められた場合はどうすればよいでしょうか? Ubuntu で 、「文字列コマンド バイナリ/実行可能ファイルで読み取り可能なすべての文字を表示できます。 「ストリングス」 コマンドは主にファイルの種類を判別するために使用されますが、テキストの抽出にも使用できます。たとえば、通常とは異なるバイナリ形式でファイルを保存したとします。このファイルに入力したテキストは、「文字列」 」 コマンド 印刷できない文字に遭遇することなく.

1 つの疑問が浮かぶかもしれません:なぜ実行可能ファイルにテキストを追加するのですか?多くの開発者は、ソフトウェアやアプリケーションのリリース時にバイナリをパッケージ化しています。ただし、このバイナリ ファイルに ASCII テキストを含めることをお勧めします。開発者とユーザーが実行可能ファイルをよりよく理解することは有益です。その結果、「strings」コマンドは、これらの非テキスト ファイルの内容を判断するのに役立ちます。

この記事では、文字列をインストールして使用する方法について説明します Ubuntu で システム。それでは、先に進みましょう!

Ubuntu に文字列をインストールする方法

まず、binutils を実行する必要があります 「「文字列」を使用するためのパッケージ 」 Ubuntuのコマンド。このパッケージには、バイナリ ファイル、プロファイル データ、ライブラリ、オブジェクト ファイル、およびアセンブリ ソース コードを作成および管理するためのさまざまなプログラミング ツールが含まれています。

$ sudo 適切な binutils をインストールするには

Ubuntu で文字列のバージョンを確認する方法

このツールのバージョンを確認するには、次のコマンドを使用します:

$ 文字列 -実行

Ubuntu で文字列コマンドを使用する方法

strings コマンドの主な用途は、文字列を抽出することです。これを行うには、入力としてファイル名を入力し、Ubuntu ターミナルでこのコマンドを実行します。私たちのシステムには、「サンプル ファイル」というバイナリ/実行可能ファイルがあります。 」。すべての例でこのバイナリを使用します。

strings コマンドは、指定したファイルに存在するすべての文字列を抽出します。以下のコマンドを実行して、その機能を確認してください:

$ Strings サンプルファイル

これは、Strings コマンドで文字列の最小長を定義する方法です

文字列コマンドでは、最小文字列長のデフォルト値 4番目に設定されています 、つまり、このコマンドは最小長が 4 の文字列のみを出力します。この制限値は、「-n」キーを押すことで変更できます。 ”文字列コマンドのオプション。この「-n」 ”オプションは、文字列の制限を表す数値を取ります。

3 人を採用しました 以下の例の文字列の最小長として。このコマンドを実行すると、最小長が 3 文字の文字列が出力されます:

$ Strings -n 3 サンプルファイル

strings コマンドで文字列のオフセットを出力する方法

文字列コマンドを実行する 、「-T」を使用できます ”オフセットを表示するオプション 文字列の。このオプションでは、オフセットのベースを定義する単一の文字を入力する必要があります。以下を使用できます:

  • D. 」を 10 進数
  • ×」 」を16進数
  • ああ 」を8進数

以下のコマンドを記述して、実行可能ファイルの文字列の 10 進オフセットを出力します。

$ Strings -T d サンプルファイル

Strings コマンドでファイル全体をスキャンする方法

ストリングス」 コマンドは、その構成に依存するため、入力ファイル全体をスキャンする場合とスキャンしない場合があります。 「-a」を使用します ”strings コマンドが、システムに存在するバイナリ ファイル全体をスキャンすることを保証するオプション。

$ Strings -a サンプルファイル

文字列コマンドでデフォルトのセパレータを変更する方法

上記の例から、標準の文字列区切り改行です . 「-S」 これらの設定を変更するには、strings コマンドのオプションを使用します。たとえば、「」と記載します。 「文字列区切りとして このコマンドで:

$ Strings -S – サンプルファイル

コマンドを実行すると、次の出力が表示されます:

Strings コマンドで複数のファイルを検索する方法

ワイルドカードは、特定のファイルを検索するために使用されます。 「* 「文字列コマンドで文字が複数の値を表し、かつ」? 」は、単一の値を示すために使用されます。 「/Container」に含まれるすべてのバイナリ ファイルを検索します。 」「*」を含むディレクトリ ” 次の例のプレースホルダー。ここにも「-if」があります ”strings コマンドは、複数のバイナリ ファイルから抽出された結果を、各行の先頭にファイル名を付けて一覧表示するためのオプションです。

以下に示す Strings コマンドのもう 1 つの機能は、抽出された結果を「grep」に送信することです。 「[|]」を使用したコマンド 「パイプオペレーター。コマンドのこの部分は、「Copyright ©」を含む文字列を探します。 」 単語:

$ 文字列 -F /container/ * |著作権©

指定されたコマンドを実行すると、次の出力が表示されます:

Strings コマンドを使用してシステム RAM を検索する方法

Strings コマンドは、バイナリ ファイルや実行可能ファイルから文字列を抽出する以外にも、さまざまな操作に使用できます。これにより、システムの RAM を確認できます。 「/dev/mem」をクリックするため、これには sudo 権限が必要です。 これには、システムのメイン メモリの設計図が含まれています。 「少ない ”この文字列コマンドの出力を制限するために使用されます:

$ sudo 文字列 /developer/mem |少ない



Ubuntu で Strings コマンドのマニュアルを開く方法

Strings コマンドのマニュアルを確認したい場合は、Ubuntu ターミナルに次のコマンドを書き込んでください:

$ man 文字列



文字列コマンドのヘルプについては、ターミナルで以下のコマンドを実行してください:

$ 文字列 -ヘルプ

卒業証書

バイナリファイルの内容を確認したい場合、Ubuntuでは「Strings」 」 コマンドが使用されます。 「文字列」とも呼ばれるバイナリ ファイルからテキスト フラグメントを抽出します。 」。この記事は、Ubuntu で文字列コマンドを使用する方法のデモンストレーションを行いました。 .これについても、さまざまな例を説明しました。これらを試して、strings コマンドをよりよく理解してください。


Ubuntu
  1. basenameコマンドの使用方法は?

  2. Ubuntu で netplan コマンドを使用する方法

  3. Ubuntu で ssh-keyscan を使用する方法

  1. Ubuntu18.04およびCentOS7でLinuxシャットダウンコマンドを使用する方法

  2. UbuntuLinuxでtailコマンドを使用する方法

  3. Ubuntu で ssh-agent を使用する方法

  1. LinuxでApt-Getコマンドを使用する方法

  2. Linuxでsudoコマンドを使用する方法

  3. Ubuntu でターミナルをクリアする方法