Linux下如何优雅地修正命令?,


如何快速纠正你的linux命令?我们在输入命令的时候,难免会出现输入命令错误,或者输入过多,过少的情况,那么除了各种按方向键退回之外,还有什么快速纠正命令的方法?

本文用|表示光标位置。

Linux下如何优雅地修正命令?

移动到命令开头

举个例子,你准备执行一个命令:

  1. ./test -a xxx -b bbb| 

但是你输入的时候,少了前面的./(为什么执行程序的时候前面要加./)

  1. test  -a xxx -b bbb 

这个时候你一般会怎么办?使用方向键将光标移动到开头?还有呢?

快捷键:ctrl + a

即可,你就会发现光标移动到了开头:

  1. |test  -a xxx -b bbb 

移动到命令结尾

移动到前面之后,发现命令结尾少了一些东西,怎么?

ctrl+e

可以将e记忆为end。

光标又移动到了最后。

向前移动一个词

如果你不想移动到最后,只是想移动一个词的距离,还可以用:alt+f

f记忆为forward。

向后移动一个词

或者向后移动:alt+b

b记忆为backward

清空整条命令

发现整条命令都不对,或者xx前面的都不会怎么办?比如想要删掉光标前的所有内容:

  1. test  -a xxx |-b bbb 

只需要按下:ctrl +u

命令就会变成:

  1. |-b bbb 

删除命令的一个词

比如下面,你要删除bbb:

  1. test  -a xxx -b bbb| 

只需要按下:ctrl+w

就会变成:

  1. test  -a xxx -b | 

将词转换为大写

比如要将bbb转换为大小:

  1. test  -a xxx -b |bbb 

按下:esc + u

就变成了:

  1. test  -a xxx -b |BBB 

u记忆为upper

将词转换为小写

按下:esc + l

又会变成小写。

l记忆为lower

the fuck

当然了,有人对于输入错误的情况,做了一个程序,用于纠正输错的程序。

不多介绍,直接看效果:

项目地址:https://github.com/nvbn/thefuck

总结

  • ctrl + a:光标移动到命令开头
  • ctrl + e:光标移动到命令结尾
  • alt f:光标向前移动一个单词
  • alt b:光标向后移动一个单词
  • ctrl u:从光标处开始,删除命令
  • ctrl w:删除一个词(以空格隔开的字符串)
  • esc u :将当前词转换为大写
  • esc l :将当前词转换为小写

相关内容