大家好,我是你们的民工哥。

所有学习Linux系统的初学者都知道,入门时除了简单的系统知识需要了解之外,其次,最重要的就是学习与理解Linux命令的用法与其应用场景。

所以,大家也会遇到这样的情况,不太懂的命令用法,我们会去查找资料。据不完全统计,Linux系统常见的命令约600+个,一时间想全部掌握太难了,特别对于一个初学者来说,更是难上加难。

我在公众号的后台、技术交流群,经常看到很多人都会遇到这种苦恼,命令长时间不练,不敲,很快就会全部忘记,等到应用时,再去查看帮助,又有点模糊不清,找不准其使用方法与参数的应用。

特别是需要多个命令去配合完成一个工作的时候,更难下手去写,有时候,就算群里有人给出了相关的答案,他还是一时很难理解其中的含义是什么?为什么是这样配合使用的?为什么需要使用这个参数?一连串的问题接踵而至,但你这样一问,难免让回复你的人望而却步!

如果,这个时候有一个命令解释器的工具存在,那将是多么的完美!

那么,今天,民工哥给大家安利一款实用、好玩的命令学习神器:kmdr。

传送门:https://github.com/ediardo/km...

kmdr 的强大之处在于

  • 如果您在使用Linux终端命令时遇到困难,Kmdr可以帮助您解密它们。这是一个有用的工具,特别是对于初学者Linux用户。
  • 它可以帮助您轻松学习CLI命令,而无需离开终端,也无需浏览冗长的手册页。Kmdr不仅提供Linux命令,还提供了许多CLI命令的解释

支持列表如下

查看完整的支持列表:

https://github.com/ediardo/km...

安装 Kmdr CLI

===========

kmdr 是用 Nodejs 开发出来免费、开源的工具,所以,对于安装环境要求如下:

  • Node.js v8.x及更高版本
  • 包管理器,例如npm或yarn

使用npm包安装kmdr的命令如下:

$ npm install kmdr@latest --global
 

如果不想安装的话,也可以直接使用在线的kmdr,web地址如下:http://demo.kmdr.sh/

macOS安装命令

brew install kommandr / tap / kmdr

检查安装情况

==========

运行命令kmdr以检查它是否已正确安装在系统上。

$ kmdr

Usage: kmdr [options] [command]

The ultimate CLI learning tool for explaining commands from your terminal

kmdr provides command explanations for hundreds of programs including git,docker, kubectl, npm, go and more straight forward programs such as bash builtins.

Options:
-v, --version output the version number
-h, --help output usage information Commands:
explain|e [options] Explain a shell command
upgrade|u Check for new releases
feedback|f Send feedback :)

kmdr还可以通过容器的方式来运行

具体的步骤如下:

1、构建镜像

docker build -t kmdr-cli

2、运行容器

docker run -it --rm kmdr-cli

使用 Kmdr 在终端中显示 CLI 命令说明

下面我们通过一条复杂点的命令作为例子,来看看 kmdr 究竟有多强!

git commit -am "Initial commit"

首先,运行下面的命令,让 kmdr 进入解释状态:

$ kmdr explain
? Enter your command: git commit -am "Initial commit" git commit -am "Initial commit" EXPLANATION
git The stupid content tracker
commit Record changes to the repository
-a, --all Tell the command to automatically stage files that have been modified and deleted
-m, --message Initial commit Use the given <msg> as the commit message EXAMPLES
git reset HEAD~1
Undo the most recent commit, keeping its changes in the filesystem git commit -m "Initial commit"
Commit staged files to the repository with message "Initial commit" git log -n 3 --oneline
Show only the first line of the last three commit messages RELATED PROGRAMS hg, lsof, systemctl, aria2c, dmesg, make

从上面的结果可以看出,kmdr的强大之处就在于它会把一个复杂的命令拆分开来,一个个给你解释出来 ,连参数的含义都解释的很清楚,让你一眼就能看出其中的意思。

通过这个强大的神器kmdr,再难懂的命令都可以通过它解释给你,哪里不懂,看哪里,妈妈再也不用担心我们再看不懂命令了!

参考资料

The ultimate CLI learning tool

官方Twitter

最新整理的2TB技术干货:包括系统运维、数据库、redis、MogoDB、电子书、Java基础课程、Java实战项目、架构师综合教程、架构师实战项目、大数据、Docker容器、ELK Stack、机器学习、BAT面试精讲视频等。在「 民工哥技术之路」微信公众号对话框回复关键字:1024即可获取全部资料。

好玩、有趣的 Linux 命令学习神器 kmdr!的更多相关文章

  1. Linux命令学习神器!命令看不懂直接给你解释!

    大家都知道,Linux 系统有非常多的命令,而且每个命令又有非常多的用法,想要全部记住所有命令的所有用法,恐怕是一件不可能完成的任务. 一般情况下,我们学习一个命令时,要么直接百度去搜索它的用法,要么 ...

  2. 别出心裁的Linux命令学习法

    别出心裁的Linux命令学习法 操作系统操作系统为你完成所有"硬件相关.应用无关"的工作,以给你方便.效率.安全.操作系统的功能我总结为两点:管家婆和服务生: 管家婆:通过进程.虚 ...

  3. Linux命令学习

    Linux命令学习 Ubuntu常用快捷键 •Ctrl+Alt+T: 打开终端 •Ctrl+Shift+T: 新建标签页 •Tab: 终端中命令补全 •Alt+数字N: 终端中切换到第N个标签页 •↑ ...

  4. Linux命令学习总结之rmdir命令的相关资料可以参考下

    这篇文章主要介绍了Linux命令学习总结之rmdir命令的相关资料,需要的朋友可以参考下(http://www.nanke0834.com) 命令简介: rmdir命令用用来删除空目录,如果目录非空, ...

  5. 分享几个有趣的Linux命令

    前言 最近工作比较忙,没时间写博客,这次介绍几个有趣的Linux命令. 命令:sl 当你使用这个命令时会看到一辆小火车从你的屏幕经过.亲测! 安装命令如下: yum -y install sl 执行效 ...

  6. 10个非常有趣的Linux命令【转载】

    Linux当中有很多比较有趣的命令,可以动手看看,很简单的. 1.rev命令 一行接一行地颠倒所输入的字符串. 运行: $rev 如输入:shiyanlou shiyanlou rev.jpg 2.a ...

  7. linux命令学习之:chmod

    chmod命令用来变更文件或目录的权限.在Linux系统家族里,文件或目录权限的控制分别以读取R.写入W.执行X3种一般权限来区分,另有3种特殊权限可供运用.用户可以使用chmod指令去变更文件与目录 ...

  8. [转载]几个有趣的Linux命令

      本文给大家介绍几个有趣的Linux命令. 1. pv 命令 有时候我们在电影屏幕上看到一些字幕一个个匀速显示出来,像有人在边敲键盘,边显示一样.Linux上的pv命令可以实现这种效果. 默认情况下 ...

  9. Linux命令学习笔记1

    1.Linux命令学习 2.Mkdir /data       -创建文件夹 在/下创建文件夹 data 3.Cd               -目录切换 列如cd / 4.Touch /data/1 ...

  10. 《Linux命令学习手册》系列分享专栏

    <Linux命令学习手册>系列分享专栏 <Linux命令学习手册>已整理成PDF文档,点击可直接下载至本地查阅https://www.webfalse.com/read/207 ...

随机推荐

  1. Go 1.22 中的 For 循环

    原文在这里. 由 David Chase and Russ Cox 发布于2023年9月19日 Go 1.21 版本包含了对 for 循环作用域的预览更改,我们计划在 Go 1.22 中发布此更改,以 ...

  2. 一文教你理解Kafka offset

    日常开发中,相信大家都对 Kafka 有所耳闻,Kafka 作为一个分布式的流处理平台,一般用来存储和传输大量的消息数据.在 Kafka 中有三个重要概念,分别是 topic.partition 和 ...

  3. Django-rest-framework框架——Xadmin的使用、Book系列多表群操作、RBAC-基于角色的访问控制

    @ 目录 一 过滤Filtering 二 排序 三 分页Pagination 可选分页器 应用 四 异常处理 Exceptions 4.1 使用方式 4.2 案例 4.3 REST framework ...

  4. CIC滤波器仿真与实验过程及结果记录

    整理于2023-10-08 0.0 前言: 前面介绍了使用matlab中的Filter Designer工具箱进行CIC抽取滤波器设计的仿真过程与结果.下面在前面的基础上针对现有的[正点原子ZYNQ] ...

  5. Jmeter将响应数据的结果保存到本地的一个文件(xls和csv)

    打印excel和csv文件的区别?? 第一种:打印excel 第二种:打印csv文件 创建beanshell后置处理器  import org.json.*;import java.io.*; Str ...

  6. Java虚拟机(JVM):第六幕:自动内存管理 - 选择合适的垃圾收集器

    前言:在虚拟机的世界里面,内置了很多的垃圾收集器,但并不是说最先进的就是最好的.有一句话说的好"因地制宜": 一.Epsilon收集器 是一个无操作的收集器,但是贴切的来说是&qu ...

  7. 使用Github Action实现构建、发布到 nuget.org

    使用Github Action实现构建.发布到 nuget.org GitHub Actions是GitHub提供的持续集成和持续部署(CI/CD)工具,它能够自动化构建.测试和部署你的项目.在这篇教 ...

  8. Java开发面试--群面专区

    目录 一.群面背景 二.群面流程 三.群面角色 四.群面细节 五.群面礼仪 六.群面话术 七.个人演讲 八.群面题型 群面也称无领导小组~ 候选人们被要求在一个相对自由的环境中展示他们的能力,并在没有 ...

  9. 长程 Transformer 模型

    Tay 等人的 Efficient Transformers taxonomy from Efficient Transformers: a Survey 论文 本文由 Teven Le Scao.P ...

  10. Mach-O Inside: BSS Section

    1 BSS 起源 BSS(Block Started by Symbol)这个词最初是 UA-SAP 汇编器(United Aircraft Symbolic Assembly Program)中的一 ...