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

edを使用してLinuxターミナルのテキストエディタを起動します

GNU ed コマンドはラインエディタです。これは、Unixの最初のテキストエディタであり、すべてのPOSIXシステムで使用可能であった(そして一般的には現在も使用可能である)ため、標準のUnixテキストエディタと見なされています。いくつかの点で、それが最初であったことは簡単にわかります。なぜなら、多くの点で、それは非常に初歩的なものだからです。他のほとんどのテキストエディタとは異なり、独自のウィンドウや画面では開きません。実際、デフォルトでは、ユーザーに入力を求めることすらありません。一方で、インターフェースがほとんどないことも強みになる可能性があります。これは、インタラクティブに、またはスクリプトを介して短い指示で制御できる機能的なエディターです。

edのインストール

LinuxまたはBSDを実行している場合は、おそらくすでにed インストール済み(GNU ed LinuxおよびBSDではed BSDで)。ただし、一部の最小限の環境では、edを省略しています。 、ただし、おそらくディストリビューションのソフトウェアリポジトリまたはポートツリーから入手できます。 MacOSにはBSDedが付属しています インストールされています。

起動ed

edを起動すると 、プロンプトを失ったようです。おそらくed 失速しました。ありません。指示を待っているだけです:

$ ed

edに伝えるには もう少し冗長にするために、pでプロンプトを返すように命令できます。 コマンド:

$ ed
p
?

疑問符(? )はデフォルトのed プロンプト。

バッファ

edの間 アクティブな場合は、バッファと呼ばれるものを使用します 。バッファはメモリ内の場所です。ファイルを直接編集しているのではありません。バッファを編集しているだけです。 edを終了する必要があります ディスク上のファイルに変更を書き込まないと、バッファ内でのみ発生したため、すべての変更が失われます。 (これは、最初のスクラッチバッファーに慣れている経験豊富なEmacsユーザーにはおなじみのように聞こえるかもしれません。)

edでテキストを書く

edを起動した後 、コマンドモードになっています。これは、空のスペースの代わりにプロンプ​​トを表示するようにエディターを設定する場合など、エディター自体にコマンドを発行できることを意味します。 aを使用して、現在のバッファにテキストを追加できます コマンド。これは、孤立したドット(.)で終了します。 )独自の行で。たとえば、この例では、バッファに2行(「helloworld」と「helloed」)を追加します。

?
a
hello world
hello ed
.

ドットを終了すると、コマンドモードに戻ります。

バッファの表示

バッファに何が含まれているかを確認するには、表示する行を入力するか、,pを入力します。 すべての行を表示します。

?
1
hello world
2
hello ed
,p
hello world
hello ed
ファイルへの書き込み

テキストに満足している場合は、wを使用してバッファをファイルに書き込むことができます。 コマンドの後に宛先ファイルの名前を続けます。

?
w example.txt
19

書き込み後の数字は、ファイルに書き込まれた文字数を示します。

ファイルの読み取り

edを使用する必要はありません テキスト入力用。 rを使用して、既存のファイルをバッファに開くこともできます。 コマンド:

?
r myfile.txt

または、edを起動することもできます バッファにロードするファイル名が続きます:

$ ed myfile.txt
バッファの編集

ed アプリケーションはテキストエディタであるため、特別な編集構文を使用してバッファ内のテキストに影響を与えることができます。 sedのユーザー またはvim その構文のいくつかはおなじみかもしれません。バッファにファイルがロードされていると仮定します:

$ ed myfile.txt
,p
This is an example document.
There is some text, but not much.
There is some errors, but not much.

最初の文の「document」という単語を「file」に変更するには、ターゲットにする行を選択し(1)、sを使用して検索機能を呼び出します。 その後に検索用語と置換用語が続きます:

?
1
This is an example document.
s/document/file/
1
This is an example file.

別の回線をターゲットにする場合、プロセスは基本的に同じですが、番号が異なります:

? 
3
There is some errors, but not much.
s/is/are/
s/much/many/

,pを使用して、バッファに対して行った編集を確認できます。 いつものようにコマンドします。

This is an example file.
There is some text, but not much.
There are some errors, but not many.

もちろん、これらの変更はバッファにのみ存在します。 edの外部のファイルを確認しましたか 、元のテキストのみが表示されます:

$ cat myfile.txt
This is an example document.
There is some text, but not much.
There is some errors, but not much.

変更をファイルに保存し直すには、wを使用します コマンド:

w myfile.txt
258
バッファをクリアする

新しいドキュメントを開始するか、新しいドキュメントを新しい環境にロードできるように新しいバッファを取得するには、cを使用します 指図。 cを発行した後 バッファをクリアするために、バッファが空になっているため、printコマンドは何も返しません:

c
,p
終了

その他のLinuxリソース

  • Linuxコマンドのチートシート
  • 高度なLinuxコマンドのチートシート
  • 無料のオンラインコース:RHELの技術概要
  • Linuxネットワーキングのチートシート
  • SELinuxチートシート
  • Linuxの一般的なコマンドのチートシート
  • Linuxコンテナとは何ですか?
  • 最新のLinux記事

edを終了するには セッションでは、qを使用します 指図。これではバッファを保存する機会がないため、このコマンドを使用する前に必ず保存してください。

試してみてください

edはもっとたくさんあります できること、そしてedを学ぶ sedについての優れた洞察を得ることができます およびvimの一部 仕事。この記事をedで書くことはしませんでした 、確かに、それが一般的なテキスト入力に最適なツールかどうかはわかりません。ただし、ed はテキストの優れたエディターであり、ドキュメントを読むことで簡単に学ぶことができます。 GNUシステムでは、info edを使用します マニュアルを表示するには。


Linux
  1. Asciinemaとのターミナルセッションを記録する

  2. procps-ngを使用してターミナルでLinuxシステムを監視します

  3. Linux 用の Windows スタイルの端末ベースのテキスト エディター

  1. konsolekalendarコマンドを使用してLinuxターミナルからカレンダーを管理します

  2. LynisでLinuxセキュリティをスキャンする

  3. Linuxターミナルで冒険に出かけましょう

  1. Linuxでjconsoleを使用してJavaを監視する

  2. e3Linuxテキストエディタをお試しください

  3. LinuxターミナルのテキストエディタとしてFeatherPadをお試しください