若是你是 Linux 資深用戶,則可能會有這些共同傾向。linux
Linux 用戶千差萬別,可是咱們許多人都有一些相同的習慣。你可能沒有本文列出的任何特徵,並且若是你是個 Linux 新用戶,你可能還不能理解這些特徵……git
下面是你多是 Linux 用戶的六個特徵。github
關於 Unix 計算機時鐘爲什麼在重置時老是將其設置回 1970-01-01 的傳聞有不少。但有點使人感到乏味的事實是,Unix 「紀元」是用於同步的通用且簡單的參考點。例如,萬聖節在儒略曆中是今年的 304 日,但咱們一般將該節日稱爲 「31 號」。咱們知道指的是哪一個月的 31 號,由於咱們有個共同的參考點:咱們知道萬聖節在 10 月慶祝,而 10 月是一年中的第十個月,而且咱們知道前面每個月包含多少天。沒有這些值,雖然咱們可使用傳統的計時方法(如月相)來跟蹤特殊的季節性事件,可是計算機顯然不具有這種能力。編程
計算機須要肯定且明肯定義的值,所以將值 1970-01-01T00:00:00Z
選擇爲 Unix 紀元的開始。每當 POSIX 計算機的時間不許確時,諸如網絡時間協議(NTP)之類的服務就能夠向其提供自 1970-01-01T00:00:00Z
以來的秒數,計算機能夠將其轉換爲人類易於識別的日期。ruby
日期和時間是在計算中要追蹤的著名的復瑣事物,主要是由於幾乎全部標準都有例外。一個月並不老是有 30 天,一年也不老是有 365 天,甚至每一年有多少秒鐘也每每會有所不一樣。若是你正在尋找一個有趣而使人沮喪的編程練習,那麼請嘗試編程一個可靠的日曆應用程序!bash
衆所周知,最多見的 Unix 命令都超簡短。除了 cd
、ls
和 mv
之類的命令外,還有一個命令簡直不能再短了:w
(它根據 /var/run/utmp
文件顯示當前誰登陸了)。markdown
一方面,極短的命令彷佛很不直觀。新用戶可能不會猜想到鍵入 ls
會列出目錄。可是,一旦學習命令,它們確定是越短越好。若是你成天都在終端上度過,那麼你鍵入的擊鍵次數越少就意味着你能夠有更多的時間來完成工做。網絡
幸運的是,單字母命令並不太多,所以你可使用大多數字母做爲別名。例如,我常用 Emacs,以致於我以爲 emacs
的輸入時間太長,所以經過將下面這行添加到 .bashrc
文件中,將其別名爲 e
:編輯器
alias e='emacs'
複製代碼
你也能夠臨時爲命令添加別名。例如,若是你在解決網絡問題時發現本身反覆運行 firewall-cmd,則能夠爲當前會話建立別名:svg
$ alias f='firewall-cmd'
$ f
usage: see firewall-cmd man page
No option specified.
複製代碼
只要你打開着終端,你的別名就會一直存在。當終端一旦關閉,它便會被遺忘。
Linux 用戶喜歡效率。儘管並不是每一個 Linux 用戶都老是急於完成工做,但 Linux 桌面中有一些旨在減小完成任務所需的操做數量的慣例。這裏有些例子。
Ctrl + 點擊
。這可能會使習慣於雙擊全部內容的用戶感到困惑,可是一旦你嘗試了單擊操做,一般就沒法返回費力的雙擊操做。Alt
、Ctrl
或 Shift
鍵來修改拖動動做。例如,Alt + 拖動
在 KDE 中移動窗口,而 GNOME 中的 Ctrl + 拖動
會複製文件而不是移動。請原諒我有點誇張,可是許多 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
複製代碼
這些麻煩、重複的任務值得研究。你永遠不知道你的工做讓計算機作起來是有多麼的簡單和快捷!
我在家裏是一個熱情的 Slackware 用戶,而在工做時是一個 RHEL 用戶。實際上,這不是事實,我如今在工做時是 Fedora 用戶。除了有時候我使用 CentOS,偶爾我還會運行 Mageia。
運行在 PowerPC64 機器上的 Debian
發行版好很差可有可無,成爲 Linux 用戶的極致樂趣之一是能夠自由決定運行哪一個發行版。乍一看,它們基本相同,使人耳目一新。可是根據你的心情,你可能更喜歡 CentOS 的穩定性而不是 Fedora 的不斷更新,或者你可能有一天會真正享受 Mageia 的集中控制中心,而後又對原始的 Debian 配置文件進行模塊化樂在其中,而有時你又會徹底轉向其餘操做系統。
OpenBSD,不是 Linux 發行版
關鍵是,Linux 發行版是激情項目,成爲其餘人的開源激情的一部分頗有趣。
不管你的經驗如何,若是你是 Linux 用戶,那麼你無疑會對開源充滿熱情。不管你是天天經過[共創藝術品] 11仍是代碼來表達你的熱情,仍是將其昇華到只在自由而自在的環境中完成工做,你都生活並構築於開源之上。由於有了千千萬萬個你,因此有了開源社區,社區因你而變得更加豐富。
有太多的東西我沒有提到。做爲 Linux 用戶,還有什麼能夠出賣你的身份?讓咱們在評論中知道!
via: opensource.com/article/19/…
做者:Seth Kenlon 選題:lujun9972 譯者:wxy 校對:wxy