iT邦幫忙

第 11 屆 iT 邦幫忙鐵人賽

DAY 2
0
自我挑戰組

猶豫就會敗北,果斷就會白給|園藝 boy 的生物資訊冒險記趣,跟上學術潮流不走冤望路 feat. RNA-Sick系列 第 2

RNA-Sick@Day2 > 一旦接受了這種設定,操作起電腦還是挺帶感的嘛|像個駭客一樣用電腦 feat. Terminal (終端機)

喜歡打字嗎?那你先不要用滑鼠

有一個關於生物資訊的謠言,就是一定要在 Unix-like 作業系統上面分析,而且要用純文字的方式輸入指令操作電腦,像是電影裡的駭客一樣。這實在是會把某些從小用 windows 長大的中產階級小孩嚇壞,其實已經有很多圖形化的生資軟體,甚至越來越多分析平台不用安裝,全部在瀏覽器中執行就可以。但是如果要能夠靈活地運用各種最新套件,還是要學學如何透過終端機輸入指令來操作電腦,所以那個謠言在某種程度上還是真的。


(截圖來自遊戲 Quadrilateral Cowboy)

平常在圖形化介面下,用滑鼠雙擊資料夾以打開該資料夾的行為可以拆解成下列兩個動作

[在當前的頁面] 以鼠標點擊(指令) 資料夾圖示(參數) + [在新的當前頁面] 顯示該資料夾內容(指令)

而在終端機中沒有鼠標也沒有圖示,上述的行為只是變成

[由目前所在位置] 要求改變所在位置(指令) 到目標位置(參數) + [由新的目前所在位置] 顯示該位置中的所有內容(指令)

只需要小小地轉換想法,以及熟練一點點基本指令,就可以遊刃有餘地拋棄滑鼠,用純指令的方式來操作電腦。

與終端機的首次近身距離作戰 (以 Mac 或 unix-like 電腦為例)

打開終端機,先不要對密密麻麻的文字感到恐慌,把他們想像成你在超市中遇到的橘子、香蕉、蘋果、或番茄,或是平常使用電腦時,人腦自動忽略掉的其他各種軟體 logo 圖示。

找到閃爍的游漂,游標左方出現的大概是電腦名稱、當前位置、使用者名稱。輕輕敲打鍵盤就可以看到你所輸入的文字,切換成英文輸入法之後,依序試試下列的基本指令吧!(Mac 與 Windows 系統的指令略有不同,以下以 Mac 或 Ubuntu 等電腦為例,如果需要 Windows 的指令的話可以看這裡)

顯示完整的當前位置 pwd (Print Working Directory 的縮寫)

游標左方就有當前的位置或資料夾名稱,但是如果想要知道更加完整的路徑的話,請輸入 pwd,即刻取得絕對路徑。如果是 Windows 系統的話直接輸入 cd

顯示資料夾內容:ls (list 的縮寫)

輸入 ls,不用任何參數,按下確認,終端機就會回傳該資料夾中的所有檔案以及資料夾名稱。

新增資料夾:mkdir (make directory 的縮寫)

這個指令就需要參數囉,輸入mkdir test,就會新增一個叫做 test 的資料夾。在圖形化介面中直接右鍵新增資料夾之後,新的資料夾會有預設的名稱 "New Folder",但是 mkdir 沒有這樣預設的服務,沒有搭配後方給予資料夾名稱的參數的話,會收到 usage: mkdir [-pv] [-m mode] directory ... 這樣子的回覆,也就是這個指令的簡單使用說明,代表執行失敗,沒有新的資料夾產生喔。

切換資料夾:cd (change directory 的縮寫)

剛剛新增了 "test" 的資料夾,那就讓我們進入那個資料夾,輸入 cd test,沒有收到任何回覆,但是看看此時游標左側的當前位置,已經變成 test 囉,可以 ls 看看是否就是新資料夾一塵不染的樣子。讓我們回到上一層資料夾,請輸入 cd ..,再 ls 一次看看是不是又可以看到 test 這個資料夾啦。

刪除:rm (remove 的縮寫)

足跡留下,垃圾帶走,我們已經回到了原本的目錄,讓我們把剛剛新增的 test 資料夾刪掉,請輸入 rm -r test,這邊出現了 r 參數,因為我們要移除的 test 是一個資料夾,刪除的時候要強制連其中的內容物也一起刪除,所以必須要加上分別代表遞迴的 r 參數。

請到櫃台預約後續練習時間

這篇的基本內容實在是很尬,這種終端機基本操作網路上早就有一大堆更清楚的教學了,需要更多功能請直接 google。如果要更加熟練地使用這些指令的話,在實作中練習更加有效。

喜歡透過簡單地操作練習,在遊戲化的過程中獲取成就感的朋友,可以考慮 Hacknet 這款遊戲。某個大駭客連絡上你,你在他一步步電子郵件的引導下,透過上述的進出資料夾與抹煞紀錄的終端機純文字操作進展中,抽絲剝繭獲得成就並理解劇情。除了可以在不知不覺間熟練指令以外,操作的介面大部分時候都是文字,沒事就開著還可以讓人誤以為你正在認真工作。

Hacknet on Steam

喜歡研究工具本身或是這種純脆靠打字完成工作的獵奇感的朋友,則可以去探索更多終端機專屬的特性與實用工具,或是把圖形化介面搬回終端機的軟體。實用的部分,Windows 上可以透過 Shutdown 指令搭配參數設定自動關機的時間,termdown 則是個極簡計時器。而某些工程師獵奇趣味的部分,則比如在終端機上瀏覽網頁的軟體 Lynx,或是看天氣 wttr.in。

trehn/termdown

Lynx
Weather report

萬一你成功地用終端機用上癮了,請記得回來告訴我還有什麼好玩的終端機應用吧!

參考資料與延伸閱讀

Galaxy.org

Django Girls' Tutorial 中文版教材

終端機及常用指令介紹 - 為你自己學 Git | 高見龍

Day26-終端機操作 - iT 邦幫忙::一起幫忙解決難題,拯救 IT 人的一天

Hacknet

trehn/termdown

Weather report

Lynx

關於作者

謝晨 (Chen Hsieh),臺大園藝暨景觀學系研究所碩士。讀碩士前的興趣是懷著寫點程式妄圖解決農業問題的夢想參加比賽,拿了幾個黑客松與 Open Data 創新應用競賽的獎,卻都沒有勇氣將項目經營下去;研究所期間的興趣轉換成讀學術期刊的出刊電子報。靠著這些興趣當選 107 學年的臺大優秀青年,畢業後卻成了無業的實驗室居民。現在在農場旁的研究館辦公室寫點東西,希望可以跟世界分享生物資訊與園藝的樂趣!

感謝選擇匿名的朋友們協助校閱初稿與提供意見,也敬請各位讀者不吝指教!

E-mail

Facebook

Twitter

Linkedin

RNA-Sick.me


上一篇
RNA-Sick@Day1 > 你己被選中成為「賽博格研究生」|生物資訊 の 冒險記趣 feat. Phylo
下一篇
RNA-Sick@Day3 > 小孩子才要做選擇,我全都要|入門生物資訊該學什麼語言呢 feat. Anaconda
系列文
猶豫就會敗北,果斷就會白給|園藝 boy 的生物資訊冒險記趣,跟上學術潮流不走冤望路 feat. RNA-Sick30

尚未有邦友留言

立即登入留言