是否有一种快捷方式可以在输入命令行时清除命令行,而不是一直按住退格键几秒钟?
我之所以问这个问题,是因为我Tab在终端中使用 bash 命令时经常使用 键来自动填写文件名。例如,cd this_is_a_long_file_name
我不会输入 ,而是输入cd th<Tab>
。但后来我意识到我输入了错误的命令/文件名,我必须按住退格键清除所有内容并重复该过程。
答案1
Ctrl+U只会清理从光标到行首的部分,因此,如果光标在行末,则会清理整行,如果不是,则会保留光标后的字符。
为了完整地回答,我会说:
Ctrl+ U- 仅当光标位于行末时,才清除从行末到行首的所有内容。
- 如果需要的话,您可以使用Ctrl+调用已清除的行。Y
Ctrl+ K- 仅当光标位于行首时,才清除从行首到行末的所有内容。
- 如果需要的话,您可以使用Ctrl+调用已清除的行。Y
Ctrl+ W- 清除当前行中的前一个单词。例如,如果您输入了类似这样的命令
git diff /path/to/some/file
,并且只想删除该命令的最后一个参数,则Ctrl+W非常有用。- 如果需要,您可以使用Ctrl+调用已清除的数据。Y
Ctrl++ E Ctrl——U将光标移动到行末,并清除当前行从行末到行首的所有内容。
- 如果需要的话,您可以使用Ctrl+调用已清除的行。Y
Ctrl++ ——将光标移动A Ctrl到K行首,并清除当前行从行首到行末的所有内容。
- 如果需要的话,您可以使用Ctrl+调用已清除的行。Y
Ctrl+ C-我的最爱- 取消当前命令行,这意味着清除所有当前行,无论光标在哪里。
- 缺点:无法再回忆起已清除的线路。
Alt++ Shift-#注释当前行,将其保存在历史记录中并在新行上显示提示。
答案2
快捷方式Ctrl+u应该可以实现您想要的功能。
答案3
如果您意识到按错了键,请按Ctrl+ _(下划线,您可能需要按住,Shift具体取决于您的键盘布局,例如Ctrl+ Shift+-美国键盘)撤消最后一个编辑命令。
如果您意识到输入了错误的命令名称但参数是正确的,则可以使用光标移动命令(例如箭头键)Home并End导航到要修改的命令行部分。
命令Alt+b和Alt+f每次以一个单词的顺序来回移动。Alt+d和Ctrl+w删除光标后的下一个单词,或者如果光标在单词内,则删除单词的末尾;Alt+b使用 shell 的单词概念,而Ctrl+w使用空格分隔的单词。Esc Backspace删除光标前的单词。
如果您想完全放弃当前命令行并重新开始,请按Ctrl+ c。
答案4
用于Ctrl-c
取消当前命令,如果您还没有按 Enter 键,此命令也有效。但它不会清除终端,只会在新行上显示您的提示。要清除终端的可视部分,您可以按Ctrl-l