Linux 資深用戶的 6 大特徵
Linux 用戶千差萬別,但是我們許多人都有一些相同的習慣。你可能沒有本文列出的任何特徵,而且如果你是個 Linux 新用戶,你可能還不能理解這些特徵……
下面是你可能是 Linux 用戶的六個特徵。
1、理所當然,紀元始於 1970 年 1 月 1 日
關於 Unix 計算機時鐘為何在重置時總是將其設置回 1970-01-01 的傳聞有很多。但有點令人感到乏味的事實是,Unix 「紀元」是用於同步的通用且簡單的參考點。例如,萬聖節在儒略曆中是今年的 304 日,但我們通常將該節日稱為 「31 號」。我們知道指的是哪個月的 31 號,因為我們有個共同的參考點:我們知道萬聖節在 10 月慶祝,而 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 操作系統是如此緊密地集成在一起。最容易自動化的是你在終端中已經執行的操作,因為命令只是你在解釋器中鍵入的字元串,而該解釋器(終端)不會在乎你是手動鍵入字元串還是將其指向一個腳本。
例如,如果你發現自己經常將一組文件從一個位置移動到另一個位置,則或許可以將相同的指令序列用作一個腳本,你可以使用單個命令來觸發該腳本。假設你每天早上手動執行此操作:
$ 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。
![Debian on a PowerPC64 box, image CC BY SA Claudio Miranda](/data/attachment/album/201912/02/093429jvh9lni6xzhlxyih.png "Debian on a PowerPC64 box")
運行在 PowerPC64 機器上的 Debian
發行版好不好無關緊要,成為 Linux 用戶的極致樂趣之一是可以自由決定運行哪個發行版。乍一看,它們基本相同,令人耳目一新。但是根據你的心情,你可能更喜歡 CentOS 的穩定性而不是 Fedora 的不斷更新,或者你可能有一天會真正享受 Mageia 的集中控制中心,然後又對原始的 Debian 配置文件進行模塊化樂在其中,而有時你又會完全轉向其他操作系統。
![OpenBSD, image CC BY SA Claudio Miranda](/data/attachment/album/201912/02/093431s6mcefaau91qezme.jpg "OpenBSD")
OpenBSD,不是 Linux 發行版
關鍵是,Linux 發行版是激情項目,成為其他人的開源激情的一部分很有趣。
6、你對開源充滿熱情
無論你的經驗如何,如果你是 Linux 用戶,那麼你無疑會對開源充滿熱情。無論你是每天通過共創藝術品還是代碼來表達你的熱情,還是將其升華到只在自由而自在的環境中完成工作,你都生活並構築於開源之上。因為有了千千萬萬個你,所以有了開源社區,社區因你而變得更加豐富。
有太多的東西我沒有提到。作為 Linux 用戶,還有什麼可以出賣你的身份?讓我們在評論中知道!
via: https://opensource.com/article/19/10/signs-linux-user
作者:Seth Kenlon 選題:lujun9972 譯者:wxy 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive