edに変更する行を挿入します。

edに変更する行を挿入します。

ユーザーが特定の行を変更できるようにするed便利なコマンドがあります。crlwrap行が変更されると、上矢印と下矢印を使用して以前の変更をインポートできるため、を使用すると変更が簡単になります。)

edこれらの変更を簡単にする機能の1つは、全体またはほとんどを再入力することなく変更したい行をコピーすることで、マウスを使用せずに戻る矢印を使用して簡単に目的を変更できます。編集したい行を貼り付けます。

たとえば、

1 This line must be changed
c
This line must be changed

代わりに、デフォルトの動作は次のとおりです。

1 This line must be changed
c
BLANK LINE

他のプログラムを使ってこれが可能かどうかはわかりませんed

ベストアンサー1

cのコマンドを使用して行を変更すると、edエディタはその行を何に置き換えるかを尋ねます。単純な行エディタとして、新しいテキストをインタラクティブに変更する方法がないため、代替コンテンツを行の以前の内容で事前入力しません。

ただし、edReadlineライブラリラッパーと一緒に使用するrlwrapと、テキストを送信する前にReadlineでインライン編集を実行できますed。特に、変更したい行をすでに作成している場合最近は十分(まだReadlineの履歴に残るように)Up-Arrowまたは他の適切なキーバインディングを使用して、行の履歴を循環または検索し、コマンドを実行して編集できますc

rlwrap保存した履歴のサイズは、ユーティリティオプションまたはReadline設定ファイルを編集することで調整できます。これは別の質問のトピックです。-s~/.inputrc.ed_history ファイルのサイズを大きくする方法


コメント付きのed編集セッション(#セッションにコメントを追加)は、2行の文書を作成し、上記の方法で最初の行を変更します。

$ rlwrap ed newfile                     # start ed with rlwrap
newfile: No such file or directory
a                                       # add lines
this line must change
this line is ok
.                                       # done adding lines
1c                                      # change first line
this line is now ok too                 # pressed up-arrow to find the old line, edited it
.                                       # done changing
,n                                      # output all lines with line numbers
1       this line is now ok too
2       this line is ok

おすすめ記事