好玩、有趣的 Linux 命令学习神器 kmdr!
所有学习Linux系统的初学者都知道,入门时除了简单的系统知识需要了解之外,其次,最重要的就是学习与理解Linux命令的用法与其应用场景。
所以,大家也会遇到这样的情况,不太懂的命令用法,我们会去查找资料。据不完全统计,Linux系统常见的命令约600+个,一时间想全部掌握太难了,特别对于一个初学者来说,更是难上加难。
我在公众号的后台、技术交流群,经常看到很多人都会遇到这种苦恼,命令长时间不练,不敲,很快就会全部忘记,等到应用时,再去查看帮助,又有点模糊不清,找不准其使用方法与参数的应用。
特别是需要多个命令去配合完成一个工作的时候,更难下手去写,有时候,就算群里有人给出了相关的答案,他还是一时很难理解其中的含义是什么?为什么是这样配合使用的?为什么需要使用这个参数?一连串的问题接踵而至,但你这样一问,难免让回复你的人望而却步!
如果,这个时候有一个命令解释器的工具存在,那将是多么的完美!
那么,今天,民工哥给大家安利一款实用、好玩的命令学习神器:kmdr。
传送门:https://github.com/ediardo/kmdr-cli
kmdr 的强大之处在于
- 如果您在使用Linux终端命令时遇到困难,Kmdr可以帮助您解密它们。这是一个有用的工具,特别是对于初学者Linux用户。
- 它可以帮助您轻松学习CLI命令,而无需离开终端,也无需浏览冗长的手册页。Kmdr不仅提供Linux命令,还提供了许多CLI命令的解释
支持列表如下
查看完整的支持列表:
https://github.com/ediardo/kmdr-cli#supported-programs)
安装 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,再难懂的命令都可以通过它解释给你,哪里不懂,看哪里,妈妈再也不用担心我们再看不懂命令了!
参考资料
- 官方网站:https://kmdr.sh/
- 官方Twitter:http://twitter.com/kmdr_sh
- 零基础学编程031:Python与其它语言最不同的一条语法规则
- dedecms批量导出新增文章url和标题
- 明理知意:复合索引优化及索引访问原理
- WCF配置文件与文件下载之坎坷路
- 零基础学编程030:像黑客般玩玩字符艺术
- Android获取SD卡总容量,可用大小,机身内存总容量及可用大小
- 零基础学编程029:程序员作图不用笔
- 零基础学编程028:面向对象编程OOP
- 如何修改帝国cms文章点击量默认值和成倍增加
- 深入内核:监听器的工作原理与故障诊断分析
- 零基础学编程027:站在巨人的肩膀上
- 群分享:Markdown + CSS 实现微信公众号排版
- Android 蓝牙操作详解
- Linq to xml 操作带命名空间的xml
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- python第十六课——外部函数and内部函数
- python第十七课——列表生成式
- python第十八课——常用内置函数
- python第十九课——random模块中的常用函数
- python第二十课——math模块中常用的函数
- python第二十一课——str中的常用函数(重要)
- python第二十二课——list函数
- python第二十三课——dict中的函数
- python第二十四课——set中的函数
- python第二十五课——闭包
- LNMP架构应用实战——PHP扩展及缓存插件安装
- python第二十六课——装饰器
- LNMP架构应用实战——openssl升级最新版本
- python第二十七课——os模块
- python第二十八课——编码小常识