阅读本文大概需要 2.4 分钟。

作者 | 李火清

转载自【CU技术社区】

编者按:说到Linux命令相信大家都不陌生,就连前端现在也要经常在 terminal 敲一些 node,gulp等命令,本文详细介绍了五个相见恨晚,能极大提高工作效率的命令。

 

tldr(命令手册)

作为一个开发人员,经常要用到终端命令,最让人头疼的是记不住繁琐的参数。用谷哥度娘检索效率低下,通过man命令显示的结果又不易阅读。

tldr命令正是解决这一痛点。

tldr是什么?它的GitHub页翻译是 “一个简洁的社区驱动的帮助手册”,这是对它最好的解释,根据二八原则给出命令的常用场景示例,简单易读,来自五湖四海的朋友都可以向Github上这个命令库提交内容,它完全是由社区驱动的。

man命令有更详细的说明,单从实用角度讲,tldr才是王者。

小提示:支持在近20种语言环境下运行,通过tldr --update更新本地命令库。

tree(树形目录)

当我们编写项目文档时,如果想更直观的表达项目结构及内容,这个小小的命令就可以派上用场了,它以类似于图像的树状图排列目录和文件。

小提示:支持定制层级,过滤内容等各种个性化设置。通过tldr tree查看具体使用示例。添加-N参数解决中文乱码问题。

rlwrap(历史命令)

经常使用命令的同学一定有个习惯,通过上下按键切换历史命令,但让人头疼的是telnet命令不支持切换,甚至是退格删除,所以时常遇到如下尴尬场面。莫急,rlwrap便是用来解决这一痛点的。

通过telnet执行Dubbo接口:

通过telnet连接memcached服务器:

什么是rlwrap?它是基于readline库,实现命令行补全和记录的包装命令。如今交互式输入是最基本的需求,Linux正是通过readline这个库来记录用户的操作,实现交互式输入、自动补全、搜索等功能。对于没有支持readline操作的命令,rlwrap就是最好的伙伴了。

用法:在执行telnet命令前加上rlwrap命令即可。

小提示:除了telnet命令不支持Readline需要rlwrap包装外,Oracle的sqlplus、rman、asmcmd等命令也可以通过rlwrap来获得上下切换功能。

快捷别名:alias telnet='rlwrap telnet'

script(记录会话输出)

很多时候,为了安全和备份,需要对工作内容进行保存。那么,script命令就是隐藏在终端的记录器,它可以记录终端会话的所有内容,形成文件。对于需要工作留痕的同学来说,script便是良药。

如何使用 ?

script启动它,此时它已经开始记录。完事后用exit退出记录,默认生成了一个叫“typescript”的文件。

小提示:script可以在什么场景下使用呢? 
1、我需要把大批量视频推送到CDN,耗时一晚上,这时通过script记录执行的日志,第二天对没有推送成功的做单独处理。 
2、别人远程你的服务器或电脑,安全起见script一下。 
3、与同事协同工作时,自己工作做了一半,交给另一个人来做,此时发给他你的script,让他接着干。 
……

autojump(一键直达)

“最后一个压轴神器,也是我用的最多的命令之一。”

相信多数终端用户使用频率最高的命令是cdls,在我不知道切换到哪里的时候不得不ls确认目录名,如此反复,到达想去的目录可能要经历几次甚至十次以上的cd,经历了多少风雨才找到我的文件。俗话说“不会偷懒的程序员不是好程序员”,如此饱受挫折哪是我们的风格,于是有了autojump的诞生,它注定不凡。

顾名思义,autojump,自动跳转,而不是切换,因为它可以做到一键直达。

小提示:可以通过j -s命令查看它的数据库,以及数据库中的目录权重。

 

·END·

程序员的成长之路

路虽远,行则必至

微信ID:cxydczzl

5个相见恨晚的Linux命令的更多相关文章

  1. 5个相见恨晚的Linux命令,每一个都非常实用

    转至:https://zhuanlan.zhihu.com/p/57866239 作为一个开发人员,经常要用到终端命令,最让人头疼的是记不住繁琐的参数.用谷哥度娘检索效率低下,通过man命令显示的结果 ...

  2. 20个Linux命令及Linux终端的趣事

    20个Linux命令及Linux终端的趣事 . 命令:sl (蒸汽机车) 你可能了解 ‘ls’ 命令,并经常使用它来查看文件夹的内容.但是,有些时候你可能会拼写成 ‘sl’ ,这时我们应该如何获得一些 ...

  3. 11个让你吃惊的linux命令

    我已经用了十年的Linux了,通过今天这篇文章我将向大家展示一系列的命令.工具和技巧,我希望一开始就有人告诉我这些,而不是曾在我成长道路上绊住我. AD: 我已经用了十年的Linux了,通过今天这篇文 ...

  4. Linux实战教学笔记04:Linux命令基础

    第四节:Linux命令基础 标签(空格分隔):Linux实战教学笔记 第1章 认识操作环境 root:当前登陆的用户名 @分隔符 chensiqi:主机名 -:当前路径位置 用户的提示符 1.1 Li ...

  5. 像黑客一样使用 Linux 命令行

    前言 之前在博客园看到一篇介绍 IntelliJ IDEA 配置的文章,它里面用的是 gif 动态图片进行展示,我觉得很不错.所以在我今天以及以后的博文中,我也会尽量使用 gif 动图进行展示.制作 ...

  6. 11 个很少人知道但很有用的 Linux 命令

    Linux命令行吸引了大多数Linux爱好者.一个正常的Linux用户一般掌握大约50-60个命令来处理每日的任务.Linux命令和它们的转换对于Linux用户.Shell脚本程序员和管理员来说是最有 ...

  7. Linux命令随笔

    Linux命令总结 man ==命令帮助; help ==命令的帮助(bash的内置命令); ls ==list,查看目录列表; -ld:查看目录权限; -l:(long)长格式显示属性; -F:给不 ...

  8. linux命令在线手册

    下面几个网址有一些 Linux命令的在线手册,而且还是中文的,还可以搜索.非常方便 Linux命令手册 Linux命令大全 Linux中文man在线手册 每日一linux命令

  9. 常用的一些linux命令

    最近接触到一些linux环境部署的事情,下面分享一些最近使用的比较频繁的一些linux命令~ 1.一次性移动多个文件到一个文件夹里 mv  被移动文件名 -t 目标文件夹 如:mv a.txt b.t ...

随机推荐

  1. SummerNote 富文本编辑器 - Rails 集成

    使用官方提供的CDN服务 将下面一段加入layout文件中 <link href="http://netdna.bootstrapcdn.com/bootstrap/3.3.5/css ...

  2. vuex中store保存的数据,刷新页面会清空

    用vuex,项目中需要记录一些状态,来判断页面是否为登录状态和页面是否可被编辑,此时用到了vuex中的store来存储一个状态. //首先 安装vuex npm install vuex --save ...

  3. BFC是什么及能用它能做什么

    最近较为频繁的碰到了一个新的名词:BFc,每次都可以在相关的技术博客里面看到对其的简单介绍,刚开始以为自己懂了,但实际上没懂,今天就来搞清楚它到底是什么,以及我们能用他做什么? BFC:全名为 Blo ...

  4. matplotlib 初次编译无法运行

    终端 解决方案:vim ~/.matplotlib/matplotlibrc 输入backend: TkAgg 保存

  5. rtx tiny os

    一,简单测试步骤: 1.  license management包含两项:artx51 real time os, PK51 2. code #include "rtx51tny.h&quo ...

  6. 洛谷 P1338 末日的传说

    题目链接:https://www.luogu.org/problemnew/show/P1338 题目描述 只要是参加jsoi活动的同学一定都听说过Hanoi塔的传说:三根柱子上的金片每天被移动一次, ...

  7. cpptest测试总结

    项目继续,持续新增中-- 桩函数设置 桩 (函参指针赋值) √:fun(*p) { for(int i = 0; i<6; i++) p[i] = 10; } ×:fun(*p) { for(i ...

  8. ThinkPHP 3.2.3+ORACLE插入数据BUG修复及支持获取自增Id的上次记录

    TP+ORACLE插入数据BUG修复以及获取自增Id支持getLastInsID方法 这些天在做Api接口时候,发现用TP操作Oracle数据库,发现查询修改删除都能执行, 但一旦执行插入操作老是报错 ...

  9. spring实现一个简单的事务管理

    前两天给公司的数据库操作加了事务管理,今天博客就更一下这个吧. 先说明:本文只是简单得实现一下事务,事务的具体内容,比如事务的等级,事务的具体实现原理等等... 菜鸟水平有限,暂时还更不了这个,以后的 ...

  10. .net读取excel数据到DataSet中

    Dim objExcelFile As Excel.Application Dim objWorkBook As Excel.Workbook Dim objSheet As Excel.Worksh ...