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

写在前面:今天没来得及唱歌~一个多星期没更新了,今天记录下我自己用得比较多的Linux命令行快捷键,小伙伴们别嘲笑我哈~不知道为啥,每次发文就有好几个小伙伴取消关注离开之前,可以告诉我为什么吗~~

Vim的很多命令和功能与Linux系统的命令和功能及其相似,可以说是一脉相承。特特总结了10条自己常用的Linux下提高效率的小技巧,并与Vim对应命令进行对比。

(1) <Ctrl a>:Linux 命令行下执行该命令,将光标移动到行首 (a 是 ahead 的缩写)

快速移动光标,不仅是在 Vim 下的高优需求,也是 Linux 命令行下的常见工作场景。

例如,在 Linux 命令行下敲完了一长串命令后,如果想在前面先执行一个命令,则可以按组合键 <Ctrl a> 将光标移动到行首,输入想添加的命令。

Vim 下也有将光标快速移动到行首的实用命令。在 Vim 普通模式下,使用 0 可以将光标移动到当前光标所在行的行首,使用 ^ 可以在Vim下移动光标到当前行的第一个非空字符。

(2) <Ctrl e>:Linux 命令行下执行该命令,将光标移动到行尾 (e 是 end 的缩写)

既然有将光标快速移动到行首的需求,自然也有将光标快速移动到行尾的需求。与组合键 <Ctrl a> 对应的命令 <Ctrl e> 会将光标移动到行尾,方便继续输入要执行的命令。

Vim 下也有将光标快速移动到行尾的命令。在 Vim 普通模式下,使用 $ 可以将光标移动到当前行的行尾,而使用 A 命令可以将光标移动到当前行的行尾,并进入插入模式。

(3) <Ctrl r>:Linux 命令行下执行该命令,会进入历史命令查找窗口,输入要查找的命令可快速选择历史命令

个人觉得,<Ctrl r> (r 是 retrieve (检索) 的缩写)命令是一个非常实用的 Linux 技巧。当需要在已经执行过的历史命令中 (即 history 命令的结果) 查找某条命令并再次执行该命令时,可以使用 <Ctrl r> 调出 Linux 历史命令的搜索窗口,并输入要查找的目前命令进行查找并重新执行之。

当然可以通过 history | grep xxx 在已执行的历史命令列表中找到名为 xxx 的命令,然后复制该命令再重复执行之。

毋庸置疑,<Ctrl r> 相比上述的步骤更加高效、便捷。

Vim 里的模糊搜索插件 ctrlp 跟 Linux 终端命令行下执行 <Ctrl r> 的功能非常相似。推荐将 ctrlp 作为你的一个必备 Vim 插件。

(4) <Ctrl w>:Linux 命令行下执行该命令,会删除当前光标附近的一个词 (以空格隔开的字符串)

删除当前光标附近的一个词,这是工作中经常遇到的一个场景。在命令行输入命令时,经常会因为输入失误或改变命令而需要进行删除,使用退格键 (Backspace) 一个个删除字符的效率太低了,如果能一次删除一个单词,将会极大减少按键次数,整体提高Linux使用效率。

w 表示以一个空格隔开的字符串,这在 Vim 下也是相同的概念。推荐阅读:Vim基于单词移动及Vim单词、字串概念。

(5) <Ctrl u>:Linux 命令行下执行该命令,会删除命令行上已经敲出来的所有文本 (即删除整行)

经常在工作中需要取消已经敲出了一长串的命令。除了可以使用 <Ctrl c> 提前中断本次即将执行的命令外,还可以使用 <Ctrl u> 删除命令行上所有已经输入的字符。

个人觉得,<Ctrl u> 的实用性其实不大,毕竟已经有了组合命令 <Ctrl c> 能完成同样的操作,其被大家所熟知。

注:<Ctrl c> 用于中断程序的执行,而 <Ctrl z> 用于暂停程序的执行 (可通过 fg 命令恢复)。

在 Vim 下,可以使用 dd 命令快速删除当前光标所在行。

(6) <Ctrl y>:Linux 命令行下执行该命令,将粘贴 <Ctrl w><Ctrl u> 等命令删除的文本

当删除了 Linux 命令行中已经输入的某些字符后,可以在适当的时机将之再粘贴出来以便再次使用。

熟悉 Vim 基本命令的都知道,y 在 Vim 命令集中是 yank 的缩写,表示 粘贴功能。Vim 下经常使用 yy 命令粘贴被复制的文本。

聪明如斯的你,肯定是记住了 yy 命令,自然也就记住了 <Ctrl y> 命令哦~ (这也是为什么要在本文中将这些 Linux 实用技巧与 Vim 命令进行对比说明的原因)

(7) !xx关键字:Linux 命令行下执行该命令,会执行最近一条包含有 xx关键字 的历史命令

history 命令记录了 Linux 系统最近执行过的历史命令列表。如果需要重复执行最近一条包含有 xx关键字 的命令,可以使用 !xx关键字

! 真是使用 Linux 下的一个操作神器。可以使用它快速执行一条历史命令,既避免了重复的按键输入,又减少了通过翻 “↑” 箭头人肉查找历史命令的工作量。

如果包含有 xx关键字 的历史命令有多条,且本次希望执行的目标命令并不是隔当前时间最近的一条,则还可以使用 !行号n 的方式指定执行 history 列表中行号为 n 的命令。

可以看出,! 既可以使用关键字指定要执行的历史命令,也可以通过行号精确指定要执行的历史命令。推荐使用搜索引擎搜索关键字 “linux 惊叹号” 相关内容的细节。

Vim 下好像并没有与之功能类似的命令?

(8) cd -:Linux 命令行下执行该命令,会将当前目录切换到上一次所在目录

在 Linux 命令行下进行操作时,经常遇到辛辛苦苦进入到一个很深的目录并执行一些操作后,不小心输入了 cd 命令切换回了当前用户根目录的情况。再次输入完整的深层次目录或通过翻 “↑” 键以便再次进入该目录显然是一个很 “蠢笨” 的方法。

在 Linux 下,假设当前所在目录为 a,通过 cd 某路径 命令切换到了 b 目录后,使用 cd - 命令可快速切换回 a 目录哦。

(9) <Shift Insert>:Linux 命令行下执行该命令,可粘贴复制到系统剪切板上的内容

在 Linux 命令行下,除了可以使用鼠标右键粘贴复制的文本外,还可以使用组合键 <Shift Insert> 完成粘贴操作。

据说,极客型 Linux 玩家可以做到不使用鼠标完成所有的日常工作。<Shift Insert> 进行文本粘贴显然可以减少使用鼠标的频率。在使用 xshell 等远程终端模拟软件时,使用 <Shift Insert> 是不是一个更加高效、便捷的文本粘贴方法呢?

注:<Ctrl Insert> 用于复制已选中的命令行控制台文本 (不是 <Ctrl c>哦)。

(10) <Ctrl l>:Linux 命令行下执行该命令,可清空当前屏幕

Linux 下可以使用 clear 命令清空整个屏幕,<Ctrl l> 可达到同样的效果。

Vim 下,zz 命令可用来重绘屏幕并把当前行显示在窗口正中。更多Vim实用技巧,推荐阅读《30个Vim常用命令和使用技巧整理》。

除此之外,还有一些比较不为人熟知的小技巧,例如,连续按3次 Esc 键可显示当前系统支持的所有命令,<Ctrl [ 相当于 Esc 键的功能,<Ctrl i> 等价于 Tab 键的功能等。

更多 Linux 和 Vim 实用技巧,期待你来跟我分享~


—————END—————

扫码或长按关注

回复「 加群 」进入技术群聊

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/468158.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python 微信机器人_Python 微信机器人

一、写在前边的话 如何做一个自动回复的微信机器人&#xff1f;机器人的功能有&#xff0c;自动加好友&#xff0c;关键字回复&#xff0c;等等&#xff0c;它甚至可以成为你的私人管家&#xff0c;只要你的代码到位。今天&#xff0c;主要讲解下&#xff0c;微信机器人-图灵版…

linux 控制台存储,技术|使用 Stratis 从命令行管理 Linux 存储

通过从命令行运行它&#xff0c;得到这个易于使用的 Linux 存储工具的主要用途。正如本系列的第一部分和第二部分中所讨论的&#xff0c;Stratis 是一个具有与 ZFS 和 Btrfs 相似功能的卷管理文件系统。在本文中&#xff0c;我们将介绍如何在命令行上使用 Stratis。安装 Strati…

你想要的江湖,可能不在这时候笑傲

昨天看知识星球看到的一个码农的经历&#xff0c;然后我看了&#xff0c;也回答了&#xff0c;想把回答分享给大家&#xff0c;我觉得这应该是很多人都会遇到的。困扰的问题潜水这么久&#xff0c;有一个问题想问一下&#xff0c;帅张。可能有点啰嗦。就是在一家公司做开发&…

mysql binlog 备份_MySQL的binlog知识梳理

1、binlog概念:binlog是一个二进制格式的文件&#xff0c;用于记录“修改数据或可能引起数据变更”的SQL语句(查询的SQL不会记录)。2、binlog功能:(1)恢复: 利用binlog日志恢复数据库数据。(2)复制: 主从架构通过binlog同步数据。(3)审计: 可以用binlog中的信息进行审计&#x…

你需要知道的Linux 系统下外设时钟管理

嵌入式系统一般要求低功耗&#xff0c;出于这个原因&#xff0c;一般只把需要使用到的外设时钟源打开&#xff0c;其他不需要使用到的模块&#xff0c;则默认关闭它们。LCD 模块&#xff0c;上电时候默认情况是关闭的&#xff0c;所以&#xff0c;要想使用 LCD 模块&#xff0c…

千万级大表如何更快速的创建索引_分享一份生产环境mysql数据库大表归档方案,值得收藏...

概述分享下最近做的一个mysql大表归档方案&#xff0c;仅供参考。整体思路一、明确哪些大表需做归档1、数据库表概要信息统计SELECTt1.table_schema,t1.table_name,ENGINE,table_rows,CAST( data_length / 1024.0 / 1024.0 AS DECIMAL ( 10, 2 ) ) data_size(M),CAST( index_le…

载波和LoRa

最近lora这个很火&#xff0c;火的原因是因为国家出了一个政策&#xff0c;这个政策呢&#xff0c;有很多人解读了&#xff0c;我身边也有好几个朋友做这方面的&#xff0c;然后我今天找他们聊了下&#xff0c;得到的结果是&#xff0c;这个政策肯定是或多或少对现在的行情和市…

imread函数 matlab_【MATLAB图像处理学习】1.读取和显示图片

CHAPTER2 图像处理的基础函数【使用的教材&#xff1a;冈萨雷斯 数字图像处理MATLAB(Digital image processing with Matlab】【原书图片下载地址&#xff1a;点这里】先介绍三个MATLAB中图片基本操作&#xff1a;imread imshow imwrite2.2读取图片imread(filename)imread是读取…

一场不能只看结果的较量

林书豪的比赛看得真的很舒服&#xff0c;虽然输掉了比赛&#xff0c;但是看到两边不断改变打法&#xff0c;不断试图侵犯对方的夺取分数&#xff0c;就好比看了一场战争电影&#xff0c;过程酣畅淋漓&#xff0c;结果差点令人满意。第一节广东的双后卫给北京制造了非常多的麻烦…

嘻哈帝国第一季/全集Empire迅雷下载

英文译名Empire&#xff0c;第1季(2015-01-08)FOX.本季看点&#xff1a;《嘻哈帝国》卢西奥斯莱恩是一名超级音乐明星兼Empire娱乐公司的创始人&#xff0c;故事讲述了他如何在困境和失败中运营公司的故事。拥有庞大帝国的老板得了绝症&#xff0c;于是他决定培养继承人&#x…

cassandra可视化工具_一位数据科学家的私房工具清单

作为一位万人敬仰的数据科学家&#xff0c;不但需要培育一棵参天技能树&#xff0c;私人武器库里没有一票玩得转的大火力工具也是没法在江湖中呼风唤雨的。近日北卡来罗纳大学CTO&#xff0c;一位数据科学家Jefferson Heard分享了多年来收集沉淀的数据分析工具集&#xff1a;处…

Dev C++,一个好玩的猜数字游戏

周末了&#xff0c;看了一点代码&#xff0c;发现有一个好玩的数字游戏&#xff0c;贡献给大家&#xff0c;个人觉得还是挺好玩的。说个题外话&#xff0c;之前写的文章&#xff0c;都是零散的&#xff0c;主要是时间的原因&#xff0c;最近事情有点杂&#xff0c;一说到这个事…

[BZOJ 2500] 幸福的道路

照例先贴题面&#xff08;汪汪汪&#xff09; 2500: 幸福的道路 Time Limit: 20 Sec Memory Limit: 256 MBSubmit: 368 Solved: 145[Submit][Status][Discuss]Description 小T与小L终于决定走在一起,他们不想浪费在一起的每一分每一秒,所以他们决定每天早上一同晨练来享受在一…

你手上的PCB怎么制作的?几张动图揭晓工厂生产流程

在PCB出现之前&#xff0c;电路是通过点到点的接线组成的。这种方法的可靠性很低&#xff0c;因为随着电路的老化&#xff0c;线路的破裂会导致线路节点的断路或者短路。绕线技术是电路技术的一个重大进步&#xff0c;这种方法通过将小口径线材绕在连接点的柱子上&#xff0c;提…

linux开发板作为蓝牙音箱,USB 蓝牙适配器在ARM 开发板下的使用

4、可能出现的问题和解决方案&#xff1a;4.1 编译dbus 时出现&#xff1a;1checking for accept4... yeschecking abstract socket namespace... nochecking for pkg-config... (cached) /usr/local/bin/pkg-configchecking pkg-config is at least version 0.9.0... yescheck…

细丝极恐的华为251事件

事情的来龙去脉我就不再详细描述了&#xff0c;我提几个问题点&#xff0c;觉得有点疑惑&#xff0c;也是自己对这个事件的看法。1、李洪元于2005年入职华为&#xff0c;2018年1月离职&#xff0c;在2016年11月21日向公司的投诉邮箱发了一份匿名邮件&#xff0c;至于发邮件的东…

mysql set语句_mysql--乱码解决(6)

1.字符集介绍mysql数据库字符集包括字符集(character)和校对规则(collation)两个概念&#xff0c;其中字符集是用来定义mysql数据字符串的存储方式&#xff0c;而校对规则则是定义比较字符串的方式。2.常见字符集3.解决中文乱码思想&#xff1a;保持linux、服务端、库、表、客户…

C 语言,你真的懂递归了吗?

什么是递归&#xff1f;要说到递归如果不说栈的话&#xff0c;我觉得有点不合适&#xff0c;递归特点就是不断的调用同一个函数&#xff0c;如果这个函数没有一个递归界限&#xff0c;那么就是死循环了&#xff0c;所以讨论递归&#xff0c;就必须要讨论递归的界限&#xff0c;…

github page hexo博客gitee_利用Github和hexo搭建个人免费博客

利用Github和hexo搭建个人免费博客详细过程&#xff1a;概述&#xff1a;详细的介绍了利用github和hexo搭建免费的博客&#xff0c;内容详细&#xff0c;浅显易懂&#xff0c;容易上手&#xff0c;大家一起进来看看吧&#xff01;1、配置Github相关操作&#xff1a;​ ①新建一…

漫画:三种 “奇葩” 的排序算法

在算法的世界里&#xff0c;有许多高效率的排序算法&#xff0c;比如快速排序、归并排序、桶排序......它们大大提高了程序的性能。但是&#xff0c;也有一些比较奇葩的排序算法&#xff0c;它们既不能做到高效率&#xff0c;也没有很好的可读性。那它们存在的意义是什么呢&…