Linux 用户种类繁多,但我们中的许多人有一些共同的习惯。您可能没有任何本文列出的明显迹象,如果您是 Linux 新用户,您可能无法识别其中许多迹象…… 但很快就会。
以下是表明您可能是 Linux 用户的六个迹象。
1. 就您所知,世界始于 1970 年 1 月 1 日。
关于 Unix 计算机时钟在重置时总是将自身设置回 1970-01-01 的原因有很多传言。但平淡的真相是,Unix“纪元”作为同步的通用且简单的参考点。例如,万圣节是儒略历中今年的第 304 天,但我们通常将这个节日称为“31 号”。我们知道我们指的是哪个 31 号,因为我们有共同的参考点:我们知道万圣节在十月庆祝,十月是一年中的第 10 个月,并且我们知道每个月之前有多少天。如果没有这些值,我们可以使用传统的计时方法,例如月相,来跟踪特殊的季节性事件,但当然,计算机不具备这种能力。
计算机需要明确定义的固定值,因此选择值 1970-01-01T00:00:00Z 作为 Unix 纪元的开始。任何时候 POSIX 计算机失去时间跟踪时,网络时间协议 (NTP) 等服务都可以为其提供自 1970-01-01T00:00:00Z 以来的秒数,计算机可以将其转换为人类友好的日期。
日期和时间是计算机领域中出了名的复杂跟踪事物,主要是因为几乎每个标准都有例外。一个月并不总是 30 天,一年并不总是 365 天,甚至秒数每年都倾向于漂移一点。如果您正在寻找有趣且令人沮丧的编程练习,请尝试编程一个可靠的日历应用程序!
2. 您认为为了完成某件事而输入超过两个字母是很麻烦的。
最常见的 Unix 命令以其简短而闻名。除了像 cd、ls 和 mv 这样的命令之外,还有一个命令是真正无法再短的:w(它显示当前谁已登录,根据 /var/run/utmp 文件)。
一方面,极短的命令似乎不直观。新用户可能不会猜到输入 ls 会列出目录。但是,一旦您学会了这些命令,命令越短越好。如果您整天都在终端中度过,那么您必须输入的击键次数越少,就意味着您可以花更多时间完成工作。
幸运的是,单字母命令很少见,这意味着您可以使用大多数字母作为别名。例如,我经常使用 Emacs,以至于我认为 emacs 输入时间太长,所以我通过将此行添加到我的 .bashrc 文件中将其别名为 e
alias e='emacs'
您也可以临时别名命令。例如,如果您发现自己在排查网络问题时反复运行 firewall-cmd,那么您可以为当前会话创建一个别名
$ alias f='firewall-cmd'
$ f
usage: see firewall-cmd man page
No option specified.
只要终端打开,您的别名就会持续存在。一旦终端关闭,它就会被遗忘。
3. 您认为点击超过两次才能完成某件事是很麻烦的。
Linux 用户喜欢效率。虽然并非每个 Linux 用户总是急于完成工作,但 Linux 桌面中存在旨在减少完成任何给定任务所需操作次数的约定。以下是一些示例。
- 在 KDE 文件管理器 Dolphin 中,单击一次即可打开文件或目录。假设如果您想选择文件,您可以单击并拖动,或者按住 Ctrl+单击。这可能会让习惯于双击所有内容的用户感到困惑,但是一旦您尝试过单次点击操作,您通常就无法回到费力的双击。
- 在大多数 Linux 桌面中,鼠标中键单击会粘贴剪贴板的最新内容。
- 在许多 Linux 桌面中,拖动操作可以通过按 Alt、Ctrl 或 Shift 键来修改。例如,Alt+拖动在 KDE 中移动窗口,而 GNOME 中的 Ctrl+拖动会导致复制而不是移动文件。
4. 您在计算机上执行任何操作都不超过三次,因为您在第三次时已经将其自动化。
请原谅夸张的说法,但许多 Linux 用户希望他们的计算机比他们更努力地工作。虽然学习如何自动化常见任务需要时间,但在 Linux 上往往比在其他平台上更容易,因为 Linux 终端和 Linux 操作系统紧密集成在一起。容易自动化的事情是您已经在终端中执行的操作,因为命令只是您输入到解释器中的字符串,而解释器(终端中运行的 shell)并不关心您是手动输入字符串还是只是将其指向脚本。
例如,如果您发现自己经常将一组文件从一个位置移动到另一个位置,那么您可能可以使用相同的指令序列作为脚本,您可以使用单个命令触发该脚本。想象一下您每天早上手动执行此操作
$ cd Documents
$ trash reports-latest.txt
$ wget myserver.local/reports/daily/report-latest.txt
$ cp report-latest.txt reports_daily/2019-31-10.log
这是一个简单的序列,但每天重复它并不是最有效的时间利用方式。通过一点抽象,您可以使用一个简单的脚本将其自动化
#!/bin/sh
trash $HOME/Documents/reports-latest.txt
wget myserver.local/reports/daily/report-latest.txt \
-P $HOME/Documents/udpates_daily/`date --iso-8601`.log
cp $HOME/Documents/udpates_daily/`date --iso-8601`.log \
$HOME/Documents/reports-latest.txt
您可以将您的脚本称为 get-reports.sh 并每天早上手动启动它,甚至可以将其输入到您的 crontab 中,以便您的计算机执行该任务而无需您的任何干预。
这可能会让新用户感到困惑,因为它并不总是清楚什么与什么集成在一起。例如,如果您经常发现自己打开图像并将其缩小 50%,那么您可能习惯于执行以下操作
- 打开您的照片查看器或编辑器
- 缩放图像
- 将图像导出为修改后的文件
- 关闭应用程序
如果您每天执行此操作多次,您可能会厌倦重复操作。但是,由于您在图形用户界面 (GUI) 中执行这些操作,因此您需要知道如何编写 GUI 脚本来自动化它。某些应用程序(例如 GIMP)具有丰富的脚本界面,但该过程显然与仅仅调整一堆命令并将它们转储到文件中不同。
再说一遍,有时您在 GUI 中执行的操作有命令行等效项。可以使用 Pandoc 转换文档的文本格式,可以使用 Image Magick 操作图像,可以编辑和转换音乐和视频等等。这只是一个知道要寻找什么的问题,并且通常学习一个新的(有时是复杂的)命令。但是,在终端中缩小图像比在 GUI 中明显更简单
#!/bin/sh
convert "${1}" -scale 50% `basename "${1}" .jpg`_50.jpg
值得调查那些麻烦的、重复的任务。您永远不知道计算机完成您的工作是多么简单和快速!
5. 您会发行版跳转
我在家是狂热的 Slackware 用户,在工作时是 RHEL 用户。实际上,这不是真的;我现在在工作中使用 Fedora。 除非我使用 CentOS。而且有那么一段时间我运行了 Mageia。

PowerPC64 盒子上的 Debian
发行版有多棒都无关紧要; 作为 Linux 用户的罪恶快感之一是能够自由地决定运行哪个发行版。乍一看,它们基本上都一样,这令人耳目一新。但是根据您的心情,您可能更喜欢 CentOS 的稳定性而不是 Fedora 的持续更新,或者您可能真正享受 Mageia 集中控制中心的一天,然后在原始 Debian 配置文件的模块化中嬉戏一天。有时您会完全转向备用操作系统。

OpenBSD,不是 Linux 发行版
重点是,Linux 发行版是激情项目,参与其他人的开源激情是一件有趣的事情。
6. 您对开源充满热情。
无论您的经验如何,如果您是 Linux 用户,您无疑对开源充满热情。无论您是通过 知识共享艺术作品 或代码 每天表达您的热情,还是将其升华并在一个自由(和解放)的环境中完成您的工作,您都在开源中生活和建设。正因为有您,才有了开源社区,而社区因您的加入而更加丰富。
还有很多我没有提到的事情。还有什么会暴露您是 Linux 用户?请在评论中告诉我们!
22 条评论