Ed
ed中如何取消目前輸入
在 GNU ed 中,有沒有辦法取消目前輸入?例如:
$ ed myfile.txt 1234 a Wrong speling. Bad sentance.
此時,我想取消輸入。我不再想插入我輸入的兩行。可能嗎?我想像這樣繼續:
. u
使用“撤消”是取消輸入的常用方法嗎?還有其他方法嗎?
您不能“取消”輸入,例如“開始附加幾行文本但實際上並未附加它們”。
在使案例如
a
命令添加文本時,可以通過在按之前按兩次來取消單行文本。這樣做也會終止目前的編輯命令。您不能以這種方式取消添加超過目前行的內容。根據您的系統和變體,在插入模式下按兩次可能會或可能不會給您一個新行來鍵入下一個命令(在 OpenBSD 上會,在 Ubuntu Linux 上不會)。Ctrl+D``Enter``ed``Ctrl+D
ed
如果您使用withrlwrap
來獲取命令歷史記錄和 Readline 編輯功能,上述“技巧”(未記錄的功能)將不起作用。完成後您可以撤消整個操作,就像您展示的那樣。您以單獨的一行結束文本的插入,
.
然後發出u
(撤消)命令。您也可以Ctrl+D
在新行上結束文本插入,然後使用該u
命令。編輯器
ed
具有單級撤消,這意味著您只能撤消最近的命令。撤消兩次撤消撤消。如果您使用單個g
、v
、G
或V
命令將多個命令應用於文本,則這將被視為一個命令,您可以在需要時撤消該命令。