当前位置: 首页 > 科技观察

10个高效Linux技巧与Vim命令对比

时间:2023-03-12 08:18:35 科技观察

Vim的很多命令和功能与Linux系统非常相似,可以说是一脉相承。Tete总结了10条Linux下常用的提高效率的技巧,并与Vim的相应命令进行了对比。(1):在Linux命令行下执行该命令,将光标移动到行首(a是ahead的缩写)。快速移动光标不仅是Vim下的优质需求,也是Linux命令行下常见的工作场景。例如,在Linux命令行输入一长串命令后,如果想先执行一个命令,可以按组合键将光标移动到行首,输入要添加的命令。Vim还有一些有用的命令可以快速将光标移动到行首。在Vim普通模式下,使用0将光标移动到当前光标所在行的行首,在Vim下使用^将光标移动到当前行的第一个非空白字符。(2):在Linux命令行下执行该命令,将光标移动到行尾(e是end的缩写)。既然需要快速将光标移动到行首,自然也就需要快速将光标移动到行尾。组合键对应的命令会把光标移动到行尾,这样就可以继续输入要执行的命令了。Vim也有快速移动光标到行尾的命令。在Vim普通模式下,使用$将光标移动到当前行的行尾,使用A命令将光标移动到当前行的行尾,进入插入模式。(3):在linux命令行下执行这个命令,会进入历史命令搜索窗口,输入你要查找的命令,可以快速选择历史命令个人认为,(r是retrieve(检索)的缩写)命令是一项非常实用的Linux技能。当需要在已经执行过的历史命令(即历史命令的结果)中搜索某条命令并再次执行该命令时,可以使用搜索窗口调出Linux历史命令,输入您要搜索的当前命令并重新启动它。执行它。当然,你可以使用history|grepxxx在执行过的历史命令列表中找到名为xxx的命令,然后复制该命令并重复执行。无疑,它比上面的步骤更高效、更方便。Vim中的模糊搜索插件ctrlp与Linux终端命令行下执行的功能非常相似。推荐ctrlp作为你必备的Vim插件之一。(4):在Linux命令行下执行该命令会删除当前光标附近的一个单词(以空格分隔的字符串)删除当前光标附近的一个单词。这是工作中经常遇到的场景。在命令行输入命令时,经常会因为输入错误或者更改命令而需要删除。使用退格键(Backspace)一个一个删除字符效率太低。如果能一次删除一个单词,将大大减少击键次数,提高Linux的整体使用效率。w表示由空格分隔的字符串,这与Vim下的概念相同。推荐阅读:Vim是基于单词移动和Vim单词和字符串的概念。(5):在linux命令行下执行该命令,会删除所有在命令行输入过的文本(即删除整行)。通常需要取消在工作中键入的一长串命令。除了用来提前打断要执行的命令外,还可以用来删除命令行中已经输入的所有字符。个人觉得实用性其实不大。毕竟,已经有一个组合命令可以完成同样的操作,这是众所周知的。注意:用于中断程序的执行,用于暂停程序的执行(可以通过fg命令恢复)。在Vim下,可以使用dd命令快速删除当前光标所在行。(6):在linux命令行下执行该命令,粘贴等删除的文本。删除一些在linux命令行输入过的字符后,可以在适当的时候重新粘贴,以供重复使用。熟悉Vim基本命令的人都知道,y是Vim命令集中yank的缩写,意思是粘贴功能。Vim经常使用yy命令来粘贴复制的文本。你真聪明,肯定把yy命令背下来了,自然也就把命令背下来了~(这也是本文将这些Linux实用技巧与Vim命令进行对比的原因)(7)!xx关键字:在下面执行这条命令Linux命令行会执行最新的包含xx关键字的历史命令。history命令记录了Linux系统最近执行过的历史命令列表。如果需要重复上一条包含xx关键字的命令,可以使用!xx关键字。!真是Linux下的操作神器。你可以用它来快速执行一条历史命令,既避免了重复的按键输入,又减少了转动“↑”箭头人肉查找历史命令的工作量。如果有多个包含xx关键字的历史命令,而本次要执行的目标命令不是当前时间的最新命令,也可以使用!linenumbern来指定执行第n行的命令历史列表。可见!不仅可以使用关键字指定要执行的历史命令,还可以通过行号精确指定要执行的历史命令。推荐使用搜索引擎搜索关键字“linux感叹号”,阅读更多相关内容。Vim下好像没有类似功能的命令?(8)cd-:在linux命令行下执行该命令会把当前目录切换到上一级目录。在Linux命令行下操作时,往往难以进入很深的目录,进行一些操作后,不小心输入cd命令,切换回当前用户根目录。再次进入完整的深层目录或者按“↑”键再次进入目录显然是一种很“笨”的方式。Linux下,假设当前目录为a,通过cd某路径命令切换到b目录后,使用cd-命令快速切换回a目录。(9):在Linux命令行下执行该命令,将复制的内容粘贴到系统剪贴板中。在Linux命令行下,除了可以使用鼠标右键来粘贴复制的文本,还可以使用组合键来完成粘贴操作。据说极客Linux游戏玩家无需使用鼠标即可完成所有日常任务。做文字粘贴明显减少了使用鼠标的频率。在使用xshell等远程终端模拟软件时,粘贴文本是不是一种更高效便捷的方式?注意:是用来复制选中的命令行控制台文本(不是哦)。(10):在Linux命令行下执行该命令,清除当前屏幕。在Linux下,可以使用clear命令清空整个屏幕,达到同样的效果。在Vim下,可以使用zz命令重绘屏幕并在窗口中间显示当前行。更多实用的Vim技巧,推荐阅读《30个Vim常用命令和使用技巧整理》。此外,还有一些鲜为人知的小技巧,比如连续按3次Esc键可以显示当前系统支持的所有命令,相当于Tab键的功能等。