英語フランス語スペイン語

Ad


OnWorksファビコン

hexer - クラウドでオンライン

Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーター上の OnWorks 無料ホスティング プロバイダーで hexer を実行します。

これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド ヘキサーです。

プログラム:

NAME


hexer - バイナリファイルエディタ

SYNOPSIS


ヘクサー [オプション] [ファイル[...]]

DESCRIPTION


ヘクサー は、バイナリ ファイルを表示および操作するためのマルチバッファ エディタです。 それはできません
ファイル全体をロードしようとするため、ブロックデバイスの編集には使用しないでください(すべきではありません)
バッファにコピーします (フロッピーディスクでは機能するはずです)。 最も重要な機能は、 ヘクサー には次の値があります:
マルチバッファ、マルチレベル取り消し、補完付きコマンドライン編集、バイナリレギュラー
式(以下を参照)。 ユーザーインターフェイスは次のように保たれています vi, だから、その方法を知っていれば
つかいます vi、簡単に始めることができます。

OPTIONS


-NS、 -読み取り専用

-v、 - 見る
ファイルを読み取り専用モードで編集します。

-NS、 - 回復します ファイル名
ファイルを回復する ファイル名 衝突の後。 (未実装)

-NS、 - 指図 command
エディター コマンドを実行して編集セッションを開始します。 command。 場合 command
スペースが含まれる場合は、二重引用符で囲む必要があります。 指定可能です
コマンドラインでの複数のコマンド:
ヘクサー -c コマンド1 -c コマンド2 ...

-NS、 --タイト
termcap/terminfo ti/te シーケンスの使用をオフにします。

-NS、 - 助けて
短いヘルプ メッセージを出力して終了します。

+ command
これは、 -c オプションを選択します。

注: 長いオプションはすべてのシステムで使用できるわけではありません。

カスタマイズ


エディターはファイルから起動コマンドを読み取ります。 ~/.hexerrc (別の起動ファイルが
環境変数を設定することで指定できます ヘキサRC)。 空行と開始行
`"' 文字 (二重引用符) を含むものは無視されます。コマンドと
同じ行のコメント。

環境変数EDITOR コマンド


同様に vi、いくつかの編集モードがあります。

Command モード
のいくつかのコマンド Command モード 数値引数を取ることができます。 数値を入力するには
引数には (XNUMX 進数) 数値を入力するだけです。 番号は最後の行にエコーされます
入力中の画面の表示。 0 進数を入力するには、最初の数字として「XNUMX」を入力します。
0 進数を入力するには、「XNUMXx」と入力します (これは問題ではありません。 x-コマンド
いずれにせよ、ゼロカウンターを使用しても意味がありません)。 一部のコマンドは、
引数として視覚的に選択された領域 (サブセクションを参照) ビジュアル モード).

b 単語の先頭に戻ります。

e 単語の末尾に移動します。

G 数値引数の場合 n が与えられたら、カーソルをその位置に移動します n。 いいえの場合
引数が指定されている場合は、位置をバッファの末尾に設定します。 最初
バッファ内のバイトは位置「0」にあるため、先頭に移動するコマンド
バッファの値は「0G」です。

Control-G
バッファ名、サイズ、ステータス、現在位置を下部に表示します。
ライン。

h j k l
カーソルを移動します。 矢印キーも同様に機能します。 数値引数 (if
指定) により、カーソルが移動する行または列の数が決まります。
と違う vi: カーソルを配置できます 背後に の最後のバイト
バッファ。

i 入力します インセット モード (下記を参照) ポイントの現在位置にあります。 もし
数値引数 n が与えられると、入力されたテキストが挿入されます n 回。 注:
(矢印キーを使用して) カーソルを移動すると、数値引数が破棄されます。

n 現在の RE を使用して次の一致に移動します。 これは「/」を入力するのと同じです。


N 現在の RE を使用して前の一致に移動します。 これは次のように入力するのと同じです
「?」、 。

コントロールO
貼り付けます。 Kill バッファを現在の位置にコピーして、
現在のバッファの内容。 数値引数の場合 n 与えられた、殺害
バッファが貼り付けられます n 回。

p ペースト。 現在の位置に Kill バッファを挿入します。 数値引数の場合
n が与えられると、kill バッファが貼り付けられます n 回。

r を使用して単一バイトを置換します。 交換する モード。 エリアを選択すると、すべて
選択した領域のバイトが置き換えられます。 数値引数が指定された場合、
指定されたバイト数が置き換えられます。

R 入力します 交換する モード (以下を参照してください)。 数値引数の場合 n が与えられた場合、置換
コマンドが繰り返される n 回。 注: カーソルの移動(矢印キーを使用)
数値引数を破棄します。

Control-R
最後の取り消しをやり直します。

u 現在のバッファに対する最後の変更を元に戻します。

いつでも可能なとき ヘクサー ファイルを作成します .hexer 現在のディレクトリ (
スワップファイル) アクセスされたバッファごとに (ここで はバッファの名前です)。 すべての変更
バッファに作られた そのファイルに保存されているため、元に戻す(およびやり直す)ことが可能です
バッファに対して行われたすべての変更。 もし スワップファイル 作成できません。元に戻すリストは
メモリに保存されます。

v 入力します ビジュアル モード (以下を参照してください)。 領域の視覚的な選択。

w 単語の先頭に進みます。

x カーソル下のバイトを削除します。 数値引数の場合 n 与えられる、 n バイト
が削除されます。 で ビジュアル モードを選択すると、選択した領域が削除されます。 注: バイト
を使用して削除されました x-command は Kill バッファにコピーされません。

コントロールX
と同じ x-command を実行しますが、削除されたバイトは Kill バッファにコピーされます。

y ヤンク。 カーソルの下のバイトを Kill バッファにヤンクします。 数値の場合
引数 n 与えられる、 n バイトが Kill バッファにヤンクされます。 で ビジュアル モード,
選択した領域がキルバッファにコピーされます。

zb 画面の一番下の行にカーソルを置きます。

zt 画面の一番上の行にカーソルを置きます。

zz 画面の中央の行にカーソルを置きます。
コマンドに注意してください zb, zt & zz ファイル内の位置を変更しないでください -
画面のみがスクロールされます (必要な場合)。

: 入力します エクス モード (以下を参照してください)。 の エクス モード に似ています ex-モードイン vi、 だけど
互換性がありません。 領域が選択されている場合は、選択範囲の境界がコピーされます
コマンドラインに。

/ を使用してバッファを前方検索します。 RE(レギュラー 表現)。 いいえの場合 RE is
指定、 RE 前に与えられた /- または ?-コマンドは再利用されます。
注:   REs内 ヘクサー の正規表現とは少し異なります。
vi (セクションを参照 REGULAR 表現).

? 正規表現を使用して逆方向検索します。

. バッファへの最後の変更を繰り返します at   現在 位置。 この意味は
前のコマンドが削除された場合 n バイトを次のように置き換えます。 m 他のバイト (n
or m ゼロの場合もあります)、 .-コマンドで実行できます 正確に 現在でも同じ
ファイル内の位置。

< XNUMX 進数列を左にシフト n バイト、ここで n (オプションの) 数値引数です。
なお、 <-コマンドは、バッファーの XNUMX 進数での表示方法のみを変更します。
列では、バッファ自体は変更されません。

> XNUMX 進数列を右にシフトする n バイト

コントロール-^
代替バッファに切り替えます (下記を参照)。

% 計算機コマンドを入力します (セクションを参照) 電卓).

ビジュアル モード
バッファ上の領域を選択します。 入力できるのは、 ビジュアル モード 使用して、 v-コマンドまたは
エリアを指定して エクス モード。 次の場合、カーソル位置から選択が開始されます。
入る ビジュアル モード 現在のカーソル位置で終了します。 残すことができます
ビジュアル モード を押して選択した領域に対してコマンドを実行せずに v or エスケープ.
選択した領域でコマンドを実行するには、次の場所にいるかのようにコマンドを入力するだけです。
Command モード。 選択範囲を使用できないコマンドはそれを無視します。 のように Command
モード、数値引数を指定することが可能です。 取得できるコマンドは、
引数として選択すると、数値引数は無視されます。

インセット モード
In インセット モード 入力したバイトは、カーソルの現在位置に挿入されます。
を押すことで、いつでもアクティブな列 (XNUMX 進列またはテキスト列) を切り替えることができます。
  TAB-鍵。 XNUMX 進数列がアクティブな場合、バイトは XNUMX 桁の XNUMX 進数として入力されます。
数値の場合、テキスト列がアクティブな場合、バイトは ASCII テキストとして入力されます。 の
削除- または バックスペース-key は、以前に挿入されたバイトを削除します。 XNUMX 進列が
アクティブな場合、以前に挿入されたニブル (XNUMX 進数) は削除されます。 不可能です
現在の挿入コマンドで挿入されたバイトよりも多くのバイトを削除します。 にいる間
インセット モード、矢印キーを使用してカーソルを移動できます。 移動することに注意してください。
カーソルは、挿入コマンドに指定された数値引数を破棄します。 を離れるには、 インセット
モード、タイプ エスケープ。 数値引数の場合 n は挿入コマンドに与えられ、
カーソルの移動によって破棄されていないため、入力されたバイトが挿入されます n 回。

交換する モード
In 交換する モード 入力すると、カーソルの下のバイトが置き換えられます。 ヒッティング バックスペース
バッファの元の内容を復元します。 数値引数の効果は次のとおりです。
に似て インセット モード: 入力されたバイトが置き換えられます n 回。 のように インセット モード,
矢印キーを使用してカーソルを移動すると、数値引数が破棄されます。

エクス モード
  エクス モード in ヘクサー と同様に保たれます ex-モードイン vi。 通常、 えっと command
次のようになります。

:エリア command 引数
コマンドを実行する command その地域で エリア.

: command 引数
コマンドを実行する command 現在の位置で。

:エリア 地域を選択 エリア.

:位置
カーソルを位置に移動します 位置.

エリアは次のように定義できます。

位置1、位置2
エリアの始まりは 位置1 そして、で終了 位置2 (包括的)。

位置
領域は XNUMX バイトを選択します 位置

% この領域はバッファ全体を選択します。

位置は次のように定義できます。

オフセット 0 進数、0 進数 (先頭に「XNUMX」が付く)、または XNUMX 進数 (先頭に「XNUMXx」が付く) の数値。

. バッファの先頭。

$ バッファの終わり。

/正規表現/
正規表現 (セクションを参照) REGULAR 表現)。 バッファが検索されます
現在の位置から前方に開始します。 一致するものが見つかった場合、現在の
位置は一致する位置に設定されます。

?正規表現?
バッファは逆方向に検索されます。

コマンドは、コマンドの一意のプレフィックスを付けて省略できます。一部のコマンドは、
たとえその文字が固有の接頭辞でなくても、単一の文字で省略されます。
コマンド名。 現在、次のコマンドがサポートされています。

s, 代替
シノプシス: エリア s /正規表現/replace/フラグ
正規表現を検索する 正規表現 と、それを置き換える replace (参照してください
REGULAR 表現). replace への「\」参照が含まれる場合があります
正規表現の部分式. フラグ:

g: global、このフラグは無視されます (バイナリ エディタでは意味がありません)。

c: 確認、ユーザーに各置換を確認するよう求めます。

(区切り文字として使用される「/」文字は任意の文字であることに注意してください。
`/' を使用するのが一般的な方法です。) 末尾の区切り文字は省略できます。 もし エリア
を省略すると、バッファ全体が検索されます。

w, 書きます
シノプシス: エリア w ファイル名
書きます エリア ファイルに ファイル名。 場合 エリア は省略されます。 バッファ全体は
ファイルに書き込まれる場合、 ファイル名 が省略されると、それに関連付けられたファイル名が
バッファーが使用されます。

r, read
シノプシス: 位置 r ファイル名
ファイルの内容を挿入します ファイル名 at 位置。 場合 位置 省略、
現在の位置が使用されます。

e, edit
シノプシス: e または: e #
バッファに変更 。 そのようなバッファがない場合は、 ヘクサー ファイルを開こうとします
命名 そしてそれを新しいバッファにロードします。 もし はハッシュ記号 (#
代替バッファが選択されます。 成功すると、現在のバッファは
代替バッファ。

b, バッファ
シノプシス: b
または: b
バッファに変更 。 成功すると、現在のバッファが代替バッファになります。
バッファ。 もし を省略した場合は、すべてのバッファのリストが表示されます。

n, 次の
バッファ リストで次のバッファを選択します。

N,
バッファリスト内の前のバッファを選択します。

S, スキップ
バッファ リストで次の未訪問のバッファを選択します。

巻き戻し バッファリストの最初のバッファを選択します。

wall 保存されていないバッファをすべて書き込みます。

c, 閉じる
シノプシス: c
または: c!
または: c
または: c!
バッファを閉じます 。 場合 が省略された場合、現在のバッファは閉じられます。 もし
バッファは変更されましたが保存されていないため、 :c-
指示; 使用 :c! オーバーライドします。

h, 助けます
オンライン ヘルプ テキストを表示します。

q, やめます
シノプシス: q
または: q!
または: q
または: q!
すべてのバッファを閉じてエディタを終了します。 開いているバッファが変更されている場合、
しかし保存されていない、 :q-コマンドは実行できません。 使用 Q! オーバーライドします。

地図

IMAP

vマップ シノプシス: 地図 から 〜へ
または: IMAP から 〜へ
または: vマップ から 〜へ
キーシーケンス から にマッピングされています 〜へ。 特殊キー(関数など)を入力するには
キー)、次を使用してマスクします。 Control-V. :地図 に影響を与える Command モード のみ、 :imap
に影響を与える インセット モード とだけ :vmap に影響を与える ビジュアル モード のみ。 そうではない
コマンド ライン エディターでキー シーケンスを再マップすることが可能です。

マップを解除

iunmap

ヴァンマップ シノプシス: マップを解除 から
または: iunmap から
または: ヴァンマップ から
で作成したキーマッピングを削除します :地図, :imap or :vmap.

セッションに シノプシス: セッションに 変数 [...]
または: セッションに 変数= [...]
または: セッションに いいえ変数 [...]
または: セッションに
変更できる変数はあまり多くないため、変更される可能性があります
けれど。 次の変数を使用できます。 イソ (ブール値): 全体を表示します
ISO-8859/1 文字セット。 アスキー (bool): ASCII 文字のみを表示します。 TERM
(文字列): 端末の名前。 最大一致 (番号)、 特別な (ブール値): 参照
REGULAR 表現. :設定 引数なしで呼び出されると、すべてがリストされます
変数と値。

d, 削除
シノプシス: エリア d
内のすべてのバイトを削除します エリア。 削除されたバイトは Kill バッファにコピーされます。

y, ヤンク
シノプシス: エリア y
のバイトをコピーします エリア キルバッファに。

バージョン
のバージョン番号を表示します ヘクサー.

zz 画面の中央の行にカーソルを置きます。 画面が次のようになっていることに注意してください。
(必要に応じて) スクロールします。 カーソル位置は変更されません。

zt 画面の一番上の行にカーソルを置きます。

zb 画面の一番下の行にカーソルを置きます。

wq と同じ :x.

x, 終了する
すべてのバッファを保存し、エディタを終了します。

コマンドが呼び出され、指定された位置、領域、または引数を使用できない場合、
追加の位置、領域、引数は無視されます。
条件付きの 端末名のリストを指定することができます。
指定されたコマンドを実行する必要があります。 構文は次のとおりです。
:端末: command
コラボレー 端末 コロンで区切られた端末名のリストです。 コマンドが実行される
の値が存在する場合に限り、 TERM がリストにあります。 つまり、次のようなコマンドを使用できます
:xterm:セット イソ
自分で .hexerrc-file (xterm で作業する場合にのみ ISO 文字セットを使用します)。

カーソル モーション
In Command モード, インセット モード, 交換する モード & ビジュアル モード、以下を使用できます
カーソル移動コマンド:

矢印 キーズ
カーソルを移動します。

Control-F
XNUMX ページ進みます。

Control-B
XNUMX ページ前に戻ります。

Control-D
半ページ先に進みます。

Control-U
半ページ前に戻ります。

COMMAND LINE EDITING


コマンドラインでは、次のコマンドを使用できます。

上矢印 下矢印
現在のコンテキストの履歴を上下に移動します。

左矢印 右矢印
カーソルを移動します。

コントロール-A
カーソルを行の先頭に移動します。

Control-E
カーソルを行末に移動します。

Control-K
現在のカーソル位置から行末までのすべての文字を削除します。

Control-U
行の先頭から現在のカーソルまでのすべての文字を削除します
位置。

削除

バックスペース
カーソルの左側の文字を削除します。

Control-D
カーソル下の文字を削除します。

入力します 返品
ラインを受け入れます。

エスケープ 行を破棄します。 注: これはとは異なります vi.

TAB 現在入力している単語を完成させてみてください。 補完が一意でない場合、単語は次のようになります。
ユニークなまでに完成しました。 もし TAB- キーを同じ位置で XNUMX 回押すと、
可能なすべての補完のリストが表示されます。

REGULAR 表現


このセクションでは、読者が RE (正規表現) に精通していることを前提としています。 で
ほとんどのアプリケーション (egrep, vi, ...) RE は回線上で動作します。つまり、
改行 (改行文字) を含む RE を使用してください。 で ヘクサー、バッファは分割されません
別々の行に分割され、改行文字は「通常の」文字とみなされます。
ここで問題が発生します。5 MB ファイル内で「a.*b」を検索すると想像してください。これには非常に時間がかかります。
長いです (遅いマシンでは最大で数分かかる場合があります)。 だからこそ、 最大一致
制限 (繰り返し演算子は最大でも一致します) 最大一致 そのオペランドの出現回数)。 の
のデフォルト値 最大一致 は 1024 ですが、次を使用してカスタマイズできます。 :設定-指示。 のために
単純な式 (一致の長さを次の式から判断できる式)
式)をオーバーライドすることができます 最大一致 `*' または `+' を XNUMX 倍にして制限します
演算子、たとえば、「a.**b」または「foo\(bar\)\+\+」。
コンテキスト指定子 `^'/`$' (行の先頭/末尾) と `\<'/`\>' に注意してください。
(単語の先頭/末尾) が利用可能であり、実際に期待どおりの動作を行います。 そうしないと
原子「.」が欲しいです。 および `[^...]' を改行文字に一致させるために設定できます。 特別な
を使用するオプション :設定-指示。
特殊文字を入力するには、標準の C `\' エスケープ シーケンスを使用できます。 を入力するには
XNUMX 進数コードを使用して文字を指定する場合は、接頭辞「\o」を使用し、その後に最大 XNUMX 桁の XNUMX 進数を続けます。
(C スタイルの 0 進数エスケープはサポートされていません。これは、`\9'、... `\XNUMX' が逆文字として解釈されるためです。
RE の部分式への参照。) XNUMX 進コードを使用して文字を入力するには、
`\x' プレフィックスの後に最大 XNUMX つの XNUMX 進数が続きます。 XNUMX 進数コードは、
接頭辞「\d」の後に最大 XNUMX 桁の XNUMX 進数が続きます。 の文字列を入力することが可能です
ベース指定子を 5 倍にしてコード化します (例: "\xxfe ff 7a 276e" または "\oo277 132 176 XNUMX")。 注記
このような文字列はアトムとして扱われます。つまり、RE "\xxff fe*" は任意の数値に一致します (
最大一致)の繰り返し ff fe.
あらゆる種類の文字 `\' エスケープ (単一の文字を表すエスケープ) を使用することができます。
文字) `[]' の範囲内。 範囲内で、「o」はその XNUMX 進数を選択します。
範囲内の後方参照は意味をなさないため、escape は省略できます。 いつ
`\{,}' 演算子を使用して最小および/または最大の繰り返し回数を指定すると、
数値は 0 進数 (接頭辞なし)、0 進数 ('XNUMX' 接頭辞)、または XNUMX 進数 ('XNUMXx' 接頭辞) で指定できます。 もし
最大数が指定されておらず、オペランドは最大でも単純な式ではありません。
最大一致 一致するものが見つかります。

電卓


ヘクサー 簡単な計算機を提供します (私のC) C で利用可能なすべての操作が可能です。
入力します 私のC コマンドを入力するだけです % (パーセント) 記号と中置記法の式。 それ
括弧を使用することが可能です。 私のC 次の二項中置演算子を理解します
(優先度の高いものから低いものへ): ** (パワー)、 * (かける)、 / (分ける)、 % (モジュロ)、 +
(追加)、 - (減算)、 << (左にシフト)、 >> (右にシフト)、 < (少ない)、 <= (以下)、 >
(大きい)、 >= (以上)、 == (同等)、 != (等しくない)、 & (算術と)、 |
(算術または)、 ^ (算術排他的論理和)、 && (論理積)、 || (論理和)、 =
(割当); および次の単項接頭辞演算子: - (否定、単項マイナス)、 ! (論理的な
ない)、 ~ (ビット単位の補数)。 私のC XNUMX つのデータ型を認識します。 ブール値, 整数 (32ビット)、
フロート (64 ビット、C double と同等)。 一部の難解なプラットフォームでは、
整数と浮動小数点は異なる場合があります。 C と同様に、除算の結果はデー​​タによって異なります。
オペランドの型。 整数を整数で割ると整数が得られます。 あなたが望むなら
結果が浮動小数点になるようにするには、オペランドの XNUMX つが浮動小数点であることを確認してください (例: type) 4 / 7。
4/7 or a/(b+0.) A / B。 次の場合、べき乗演算は float を返します。
結果が大きすぎて整数に収まりません。 計算結果は次の場所に保存されます。
特殊変数 $$ & $n コラボレー n コマンドの番号です。

onworks.net サービスを使用してオンラインで hexer を使用する


無料のサーバーとワークステーション

Windows と Linux のアプリをダウンロード

Linuxコマンド

Ad