个不为人知的Unix命令 15

每个开发人员都应该有在终端操作的才干。你无法能总在你要操作的电脑旁边,这时你就得远程登录那台机器。只管有些图形界面运行可以协助咱们成功远程作业,但是它的速度没有经过终端访问快(毕竟,它只是一些文字交流!)。

不论你是终端用户新手还是有阅历的老用户,我必需你必定青睐学习新技术和技巧。在这篇文章外面,我将会引见15个你你或许还未据说过的Unix命令。

留意:在这篇文章中,我将经常使用方括号来标识任何变量。当你运转命令时,你应该用去掉方括号,用实践的值交流它。例如咱们***个例子, man [command] 可以这样用 man cd 或许 man grep。

咱们以一个繁难的例子开局。man命令代表“manual”,手册的意思。假设你想了解任何Unix命令,你可以运转上方的命令:

mman[command]

最繁难的经常使用例子是用man来检查man命令自己的经常使用手册:

man命令自身未必是一个不为人知的命令,你能在任何Unix教程中看到它。但是,我想强调它在那些在惯例教程中很少见的不凡用法。

假设你须要知道ASCII字符,试试这个:

能否曾经对pico-和femto-哪个更小而感到困惑?试试上方的命令来失掉无关unit前缀的消息:

有很多这样的手册页面,它们有些真的也很幽默(Tip:试试 man xkill),我让你自己去玩它。同时,咱们将继续引见其它更多的命令。

假设你在一个目录外面上班,突然切换到另外一个目录中去了,有一个方法让你轻松的回到刚才的上班目录。运转上方的命令即可回到刚刚的上班目录:

由XKCD创作的这幅漫画强调了sudo命令在Unix系统中的关键性。sudo 以治理员的权限运转命令,用户也被减少到 sudo用户组。

假定你运转一个没带 sudo 前缀的命令,假设你不想再次输入这个相反的命令,你可以运转上方的命令来运转最近一次性运转的命令。

mtr 是一个弱小的网络诊断工具。它联合了 traceroute 和 ping 这两个命令的配置

mtr [hostname]

mtr检测运转mtr这台机子与远程主机之间的网络衔接, 这里有 关于mtr的具体说明,罗列了mtr的所有裁减命令。

5. [space] command

经常经常使用终端的用户或许知道他们运转过的每个命令都会记录在日志文件~/.bash_history外面。可以用上方的命令来跳过运转命令是被日志记录:

[space] [command]

正如其名所示,jot的为generates some text,包括从数字到字符以及一些乱码。假设你想生成必定范围内的数字,可运转上方的命令:

jot [number_of_numbers] [starting_number]

假设你只提供一个参数,它将会生成从1到这个数字之间的数字。

-r 参数可生成随机数,语法如下:

jot -r [number_of_numbers] [lower_limit] [upper_limit]

-b 参数可重复给定的单词。了解更多参数列表,你可以运转 man jot, 或许看这个 文档 。

一个相对繁难的命令,df 代表“disk free”,并显示你的磁盘闲暇的空间。

pkill 也就是”process kill”,中断一个运转的进程。当一个运行没反响的时刻,这个命令十分有用。语法:

pkill [application_name]

pkiil的一个幽默的经常使用状况是你可以远程登录他人正在经常使用的计算机,审核他人在运转的运行,并口头 pkill命令来中断那些进程,而当他们在周围渴望是谁在恶作剧的时刻,你装作没什么事出现一样。当然,你应该确认它不是关键运行,并且不会有很大的损失。

Discordian calendar 是一个备用日历,用 1YOLD示意1166BC。ddate 可以显示Discordian date。

假设你想检查老的Gregorian日历,经常使用 cal即可检查当月月份的日历。

这只是自动的显示,. 这个cal手册 列出了不同的可选项参数,可以按不同的样式显示更多的月份。

你或许据说过 cat命令,它有一系列用途,包括creating、copying、merging 和 displaying 文本文件。tac 命令可以做雷同的上班,但是它是以相反的顺序!瞧一瞧。

w 命令可以显示谁登陆到了你的系统。它列出了用户登陆日志,以及更多的像系统加载和运转的消息。

假设你想分解一个数字,不须要其它的上班,仅运转上方的命令即可取得一个数字的质因数分解。

factor [number]

在来一个幽默的命令,yes 命令将一个字符串打印很屡次。

yes [string]

假设你没有提供一个字符串,它递归打印“y”,中转你中止这个命令。这个函数打印字符的速度太快了,以致于我无法在同一屏形式截取这个命令的输入。假设你正在做一些事件,凑巧有人经过,你可以运转 yes 来迷糊他们,前提是他们对shell编程了解比拟少。

留意,假设你要运转这个命令,你应该知道仅有的中止命令的方法:按 CTRL+C/CMD+C 或许封锁终端。

nl命令附件了列数到文本。它最适宜用于传递其余命令的输入作为参数。另外一个函数的输入经常使用”|“来作为参数传递。看上方两个例子:

原文链接:

您可能还会对下面的文章感兴趣: