Go to main content
マニュアルページ セク ション 1: ユー ザーコマンド

印刷ビューの終了

更新: 2016年12月6日
 
 

edit(1)

名前

edit - テキストエディタ (ex の初心者ユーザー用の変形版)

形式

/usr/bin/edit [-| -s] [-l] [-L] [-R] [-r [filename]] [-t tag] [-v] [-V] [-x] [-wn] [-C] [+command | -c command] filename...
/usr/xpg4/bin/edit [-| -s] [-l] [-L] [-R] [-r [filename]] [-t tag] [-v] [-V] [-x] [-wn] [-C] [+command | -c command] filename...
/usr/xpg6/bin/edit [-| -s] [-l] [-L] [-R] [-r [filename]] [-t tag] [-v] [-V] [-x] [-wn] [-C] [+command | -c command] filename...

説明

edit ユーティリティーは、コマンド指向エディタの使用を望む、初心者のユーザー対象に推奨されるもので、テキストエディタ ex の変形です。このエディタは、次のオプションが自動的に設定され、ex とまったく同じ様に動作します。

初心者

ON

report

ON

表示モード

ON

マジック

OFF

edit の使用を始めるにあたり、役に立つ簡単な説明を次に示しますが、CRT 端末を使用している場合には、画面エディタ vi について学ぶ方をお勧めします。

既存のファイルの内容を編集する場合は、シェルに対し、コマンド edit name で始めます。edit は、そのユーザー編集用のファイルのコピーを作成してユーザーが編集できるようにし、そのファイル内の行数および文字数を表示します。新規のファイルを作成する場合も、コマンド edit にファイル名を付け、edit name で始めます。 この場合には、エディタは [New File] と表示して、このファイルが新規のファイルであることを示します。

edit コマンドのプロンプトは、コロン (:) であり、エディタを起動した後には、このコロンが表示されていなければなりません。既存のファイルを編集する場合は、edit のバッファ (編集中のファイルのコピーの名前) に何行か入っています。編集開始時には、edit はファイルの最終行を現在行とします。edit のコマンドのほとんどは、対象行をユーザーが指定しないかぎり、現在行を対象とします。したがって、print(p と省略できます) を指定し、キャリッジリターンを入力すると (これは、edit のすべてのコマンドの後に必要です)、現在行が表示されます。現在行を delete (d) で削除すると、通常、ファイル中にある次の行が 新しい現在行として表示されます。最終行を delete すると、新しい最終行が現在行になります。

空のファイルに入力したい場合、または、新しい行を追加したい場合は、append(a) コマンドを使用します。このコマンドを実行 (append の後に、キャリッジリターンを入力 ) した後は、edit は、ドット (.) だけからなる行を入力するまで、端末から入力行を読み取ります。入力行は、現在行の後に追加されます。入力した行の最終行が現在行になります。insert(i) コマンドも append と同じ様な働きをしますが、入力行は、現在行の後ではなく、前に挿入されます。

edit ユーティリティーは、バッファ内の行に行番号を付けます。先頭行が、行番号 1 になります。コマンド 1 を実行すると、edit はバッファの先頭行を表示します。このときに、コマンド d を実行すると、edit は先頭行を削除し、2 行目を 1 行目とし、現在行 (新しい 1 行目 ) を表示して現在どこにいるかわかるようにします。一般には、現在行は常に、その直前のコマンドの対象となっていた行です。

substitute (s) コマンド s/old /new/ を使用すると、現在行の中のあるテキストを置き換えることができます。 この場合、old には置き換えたい旧文字列を指定し、new には old と置き換えたい新文字列を指定します。

filename ( f) コマンドは、編集中のバッファ内の行数を表示し、このバッファに変更を加えた場合には [Modified] と表示します。バッファを変更した後は、write (w) コマンドを実行してファイルの内容をセーブすることができます。quit (q) コマンドを実行すると、エディタを終了することができます。edit を起動したけれども、そのバッファに変更を加えなかった場合は、write コマンドを実行してファイルに書き込む必要はありません (ただし、実行しても問題はありません)。バッファに変更を加えた後で、ファイルに書き込まずに editquit コマンドで終了しようとすると、メッセージ No write since last change (:quit!overrides) が表示され、edit は次のコマンドの入力を待ちます。そのバッファを書き込む必要がない場合は、quit コマンドの後に感嘆符 を付けて (q!) 実行してください。バッファは廃棄されて復元不能になり、シェルに戻ります。

d および a コマンドが使え、ファイル内の行を示す行番号の指定ができるようになると、必要とするあらゆる変更を行うことができます。ただし、edit をもう少し頻繁に使用する場合には、少なくとも、他に 2 、3 のコマンドを覚えておいたほうが便利です。

change(c) コマンドは、現在行を入力行に変更します。append の場合と同様、ドット (.) だけからなる行を入力するまで、複数の行を入力できます。change では、変更したい行の行番号を指定して、複数行を変更することができます。3,5c のように指定してください。同じ方法を使って、複数行を表示することもできます。 1,23p と指定すると、ファイルの先頭から 23 行目までを表示することができます。

undo (u) コマンドは、直前に実行したコマンドにより変更されたバッファを、元に戻します。したがって、substitute コマンドを実行し、その結果が望んだものではなかった場合、u コマンドを実行すると元の行の内容が復元されます。undo コマンドを使って undo コマンドを取り消すこともできます。edit は、コマンドがバッファの複数行を対象にした場合、警告メッセージを表示します。writequit などのコマンドは、取り消しできないので注意してください。

バッファ内の次の行を見たい場合は、キャリッジリターンを入力してください。複数の行を見たい場合は、キャリッジリターンの代わりに、^D (コントロールキーを押しながら、d を押します) を入力してください。これによって、CRT に画面半分の行が表示されるか、または、ハードコピー端末に 12 行が出力されます。z コマンドを実行すると、前後のテキストを見ることができます。現在行がテキスト表示の中心に表示され、最後に表示される行が現在行になります。'' を入力すると、z コマンドを実行する前の現在行に戻ることができます。z コマンドには、他にもオプションがあります。 z– は、元の現在行を最後の行とする 1 画面分のテキスト (または 24 行) を表示します。z+ は、現在行の次の 1 画面分を表示します。1 画面分より少ない行数で表示したい場合は、z.11 と入力すると、現在行の直前の 5 行と直後の 5 行が 表示されます (z.n と入力すると、n が奇数の場合は、現在行が中心となり、全部で n 行が表示されます。nが偶数の場合は、現在行を中心として、n–1 行が表示されます)。他のコマンドの後に行数を指定することができます。たとえば、コマンド d5 を使用すると、現在行と、現在行から数えて 5 行目まで の、合計 5 行を削除することができます。

ファイル内で何かを探す場合には、行番号がわかっていれば、行番号を使用することができます。ただし、行の挿入や削除を行なった場合には、行番号は変わっているので、これはあまりあてになりません。ファイルの前方および後方に文字列を検索することができます。/text/ という形式のコマンドを使用すると ファイルの先頭の方に向かって text を検索でき、?text?を使用するとファイルの最後の方に向かって text を検索できます。検索がファイルの終わりに到達しても text が見つからなかった場合は、ラップして元の場所まで検索を続けます。この検索の便利な機能に /^text/ という形式の検索があり、これは、行の先頭にある text を検索します。同様に /text$/ は、行の終わりにある text を検索します。どちらのコマンドも、最後に付ける / または ? を省略することができます。

現在行を表す記号名として、ドット (.) があり、これは行の範囲指定の際に最も便利です。.,$p のように指定すると、現在行から、ファイルの最終行までが表示されます。ファイルの最終行に移動するには、最終行を表す記号名 $ を使用して参照することができます。したがって、コマンド $d は、ファイルの最終行を削除し、現在行は変わりません。行参照では、算術式も使用できます。たとえば、$–5 は、最終行の前の行から数えて 5 番目の行を表し、.+20 は、現在行の次の行から数えて 20 番目の行を表します。

現在行を見つけるには、`.=' と入力します。テキストのある部分を、ファイル内またはファイル間で、移動またはコピーする場合に便利です。コピーまたは移動したい行の、最初と最後の行番号を調べます。10 行目から 20 行目を移動する場合は、10,20d a と入力すると、これらの行はファイルから削除され、a という名前のバッファに入ります。edit には、このようなバッファが、a から z まで 26 個あります。バッファ a の内容を現在行の後に入れるには、put a と入力します。これらの行を別のファイルに移動またはコピーする場合には、行をコピーした後に edit (e) コマンドを実行します。このとき、edit chapter2 のように、e コマンドの後に編集したい別のファイルの名前を指定します。削除しないで行をコピーする場合には、d の代わりに yank(y) を使用してください。1 つのファイル内だけで移動またはコピーする場合には、名前付きバッファを使用する必要はありません。たとえば、10 行目から 20 行目を ファイルの末尾に移動するには、10,20m $ と入力します。

オプション

次のオプションは、ex(1) 内で set コマンドを使用することによって、オン/オフを切り替えることができます。

–C

暗号化オプション。前述の –x オプションと同様ですが、唯一の違いは exC コマンドをシミュレートする点です。C コマンドは exX コマンドに似ていますが、読み取られたテキストがすべて暗号化されているとみなされる点のみ異なります。

–l

LISP プログラムの編集用にセットアップします。

–L

エディタまたはシステムのクラッシュが 原因で保存されたファイルの名前をすべて表示します。

–R

読み取り専用モード。読み取り専用フラグが設定され、ファイルの不慮の上書きを防ぎます。

–r filename

エディタもしくはシステムのクラッシュが発生した後で、filename が示すファイルを編集します。 (クラッシュが発生したときにバッファの中にあった filename のバージョンを回復します)。

–t tag

tag が示すタグを含むファイルを編集します。そのタグが 定義されている地点が編集開始地点となります。

–v

vi を使った編集の画面表示を開始します。単に vi コマンドを入力しても同様に実行できます。

–V

冗長。ex コマンドが標準入力によって読み込まれる場合に、その入力を標準エラーに反映します。シェルスクリプト中の ex コマンドを実行する場合に役に立ちます。

–x

暗号化オプション。これを指定すると、edit は、exX コマンドをシミュレートし、ユーザーにキーの入力を求めます。このキーを使って、crypt コマンドのアルゴリズムに従い、テキストを暗号化したり、暗号を解除したりします。Xコマンドは、読み取ったテキストが暗号化されているかどうかを判別します。また、一時バッファファイルも –x オプションに対して入力したキーの変形バージョンを用いて暗号化されます。

–wn

デフォルト時のウィンドウサイズとして n を設定します。これは、低速の回線でエディタを使用するときに役に立ちます。

+command | –c command

command で示したエディタコマンドを冒頭に実行して編集処理を開始します。通常は、検索または位置指定用のコマンドが用いられます。

- | –s

ユーザーへのすべての対話型フィードバックを抑制します。編集スクリプト実行時に役に立ちます。

filename 引数は編集対象の 1 つまたは複数のファイルを示します。

属性

属性についての詳細は、マニュアルページの attributes(5) を参照してください。

/usr/bin/edit

属性タイプ
属性値
使用条件
system/core-os
CSI
有効

/usr/xpg4/bin/edit

属性タイプ
属性値
使用条件
system/xopen/xcu4
CSI
有効

/usr/xpg6/bin/edit

属性タイプ
属性値
使用条件
system/xopen/xcu6
CSI
有効

関連項目

ed(1), ex(1), vi(1), attributes(5), XPG4(5)

暗号化オプションは、セキュリティ管理ユーティリティーパッケージで提供されていますが、米国においてのみ使用可能です。