你可能还不知道的Linux 系统七件事

Linux高手秘籍
本文介绍了七个鲜为人知的Linux技巧,包括使用交互模式的历史命令、安排任务的新方法、通过功能描述查找命令、版本管理替代系统、确保数据安全的shred命令、自动更正文件路径以及快速返回当前目录的方法。

使用 Linux 最酷的部分之一就是随着时间的推移而不断获得新的知识。每天,你都可能会遇到一个新的实用工具,或者,是一个不熟悉的标志,就可以做一些有用的事情。这些小细节可能并不总是改变生活,但它们却是专业知识的基石。

即使专家也不知道这一切。不论你有么丰富的经验,总会有更多的东西需要学习,所以这里列出关于 Linux 系统你可能还不知道的七件事。

01

历史命令有交互模式

你可能对于 Linux 系统的命令历史(history)比较熟悉,这个命令可以提供一个 bash 输入命令的标准列表。但是,如果你在很多的 “curl” 命令中查找特定的 URL 时,会觉得这个列表不是很好使用。

使用替代,Linux 提供了一种交互式反射搜索功能来帮你对付上面的烦恼。可以按 “Crtl+r” 键激活命令历史查询功能,可以交互的输入命令内容,并按“Crtl+r” 键循环在包含输入内容的命令历史中查找。找到后按回车键就可以再次执行,也可以用方向键选中,会将命令再次输入,等待执行。

02

Cron 不是安排任务计划的唯一方式

Cron 命令对于任务水平的用户来说都是极为有用的,无论是初学者还是经验丰富的专家,都可以使用该命令制订系统执行的任务计划。但是如果只制订一次的任务,那么 “at” 命令就可以让你在不需要触碰 crontab 表的情况下达到目的。

在命令提示符下输入 “at” 并跟随任务计划执行时间,命令支持的时间格式很丰富,可以是具体的执行时间以及延后的时间节点等。以下是一些具体的例子:

1.        “at 12:00 PM September302017

2.        “at now + 1 hour”

3.        “at 9:00 AMtomorrow”

输入完成后,就可以输入要执行的任务了。所有任务输入完成后,另起一行,再按 “Ctrl+D” 后会显示 “EOF” 表示输入完成。现在就完成了一个任务计划的设置。进一步,你可以使用 “atq” 命令来查询自己未执行的任务列表;也可以使用 “atrm” 加任务编号来取消任务计划。

03

你可以根据功能来查找命令,并不只是根据命令名

记住每个命令名称可能有些困难,尤其是对于初学者。幸运的是,Linux 附带了一个通功能描述和命令名称来搜索的 man 工具。下一次,如果你很难记住你要使用的命令的名称,你可以试着用一个恰当的描述来查找你想要的命令。例如,关于建立文件系统会返回一个列表的名称和描述工具,包括 “biuld” 或 “filesystem”。现在,你可以输入 “man build filesystem”,man 工具会根据你的输入显示相应的命令。

man 会接收一个或多个字符串作为参数,但它也有这样的选项 - R,它允许你通过正则表达式搜索。

04

一个替代系统允许你管理版本

如果那曾经参与过软件开发,那么你就会知道跨项目版本管理的重要性。许多 Linux 发行版都有工具来处理内置的不同版本。

可执行文件像 Java,往往象征性地链接到 / etc/alternative。这个目录,反过来,符号链接来存储二进制文件和提供管理这些链接接口。Java 是最常用的语言的替代品,但是有一点的配置,它也可以作为一个应用程序像 NVM 和 RVM 置换( 例如 NodeJS、Ruby)。

在基于 Debian 的系统,你可以创建和管理这些链接更新方案。在 CentOS,工具就是所谓的替代品。通过更改替代文件中的链接,你可以安装多种语言版本,并在不同的情况下使用不同的二进制文件。当然,这不仅仅局限于编程语言。该替代系统还支持你可能希望从命令行运行的任何可执行文件。

05

“shred” 命令

大多数人使用 “rm” 命令来删除文件,但是事实上真的把文件删除了么?其实系统并未按你预想的那样做,系统会只是将文件系统同磁盘文件间的硬链接删除。这些 “0” 和 “1” 的值在其被另一个应用覆盖前一直存在,系统这种处理方式对于敏感数据来说是非常不安全的。

“shred” 命令是 “rm” 的绝对方式,当你 “shred” 文件时,这个文件的物理数据被随机覆盖多次。甚至还可以通过选项用一串零在删除文件后覆盖原来的数据。

完全的删除文件并用零覆盖它的命令是:

1.        shred -u-z [file name]

还可以添加带有一个数字作为参数的n 选项,这个选项允许你指定进行随机覆盖数据的迭代次数。

06

输入长文件路径时 “自动更正” 功能来避免差错

有多少次你输入了一个绝对文件路径,却得到 “没有这样的文件或目录” 消息?每个人都不想体会面对一长串错误路径的痛苦,幸运的是,Linux 有一个简单的解决方案。

内置的 “shopt” 命令允许你设置不同的选项来改变你 shell 的行为。设置 cdspell 选项为 “on” 可以避免一个字母输入错误而造成的令人头痛文件路径问题。你可以使用“shopt -s cdspell” 命令来把这个选项启用。一旦被激活,文件路径会自动更正为最接近的匹配当你试图进入的目录。

shell 选项是节省时间的一种很好的方式(更不用说麻烦了),还有很多其他的选项。要看一个完整的 shell 选项列表,可以不带参数运行 shopt。要知道这是 bash 的一个特征,所以,如果你使用的是其它 shell,可能会不能使用这个命令。

07

快速返回当前目录

如果配置过一个中等程度的复杂系统,那么你可能发现自己频繁地更改目录,很难跟踪你所在的位置。如果运行命令后自动返回到当前位置,那不是很好吗?

Linux 实际上提供了一个解决这个问题的方法,它非常简单。如果进入另一个目录做某事,然后返回到当前工作目录,请将命令用括号括起来。这里有一个例子,你可以自己进行测试。让你的当前目录的一个注记,然后运行:

1.        (cd /etc&& ls -a)

这就会显示 / etc / 目录的内容而不是你当前目录的内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值