Contents
提高你的技能並控制你的機器,包括幾十個命令、專案和挑戰
從這 15.5 小時的課程,你會學到
- 掌握命令列和幾十個命令!
- 不再依賴有限的圖形使用者介面
- 從零開始編寫你自己的命令
- 使用 Cron 自動執行任務和安排工作
- 完全從命令列控制你的電腦!
- 掌握檔案權限的怪異情況
- 學習強大的鍵盤快捷鍵來提高你的效率
- 建構強大的命令管線( pipelines )
要求
- 不需要先前的經驗
- 你所需要的只是一台Windows、Linux或Mac電腦
課程說明
歡迎來到Linux 命令列訓練營,這是一個全新的課程,目的是把你變成一個命令列的強大使用者!這個課程將教你幾十個強大的命令(見底部的長列表),但重要的是,它給你提供了繼續學習新命令和完全控制你的機器的工具。你在本課程中學到的技能將使你成為一個更強大的 Web 開發者、資料科學家、機器學習工程師、遊戲開發者或普通的電腦使用者 你會覺得自己很有力量!!。
大家好,我叫 Colt Steele。我已經花了多年時間領導面對面的軟體工程訓練營,並幫助成千上萬的學生改變了職業。 在網上,我已經教了超過一百萬的學生,並有數十萬的五星評級和評論。
這是一個充滿練習和有趣挑戰的互動課程,迫使你實踐你所學的技能。你將會遇到一些與我的實體訓練營學生所經歷的相同的作業和專案。 學習一個又一個的命令可能是一種可怕的枯燥經歷,但我已經盡力使這個課程儘可能地令人興奮和有趣 🙂 你可能會對我的笑話翻白眼,但你不會感到無聊的
============課程內容: 簡短介紹============
這門課程涵蓋了大量的內容。 這裡是對關鍵點的簡短總結。 向下滾動以獲得更深入的解釋。
- 學習幾十種強大的命令(見下面的詳細介紹 )
- 理解大局:所有的命令是如何結合在一起的
- 透過將多個命令串聯起來建立複雜的資料管線 ( pipelines )
- 掌握命令列瀏覽和 Linux 資料夾結構
- 建立、刪除、移動、複製和重新命名檔案和資料夾
- 解讀和操作 Unix 檔案的權限
- 使用強大的搜尋命令,如find, locate和grep
- 掌握標準輸入、標準輸出和標準錯誤的重定向功能
- 從頭開始編寫你自己的客製化命令
- 客製化 shell:編寫你自己的有用的別名,調整提示等
- 掌握 Bash 的擴充套件和替換功能
- 使用 cron 和 cronjob 自動完成繁瑣的任務
- 使用 nano 直接從命令列編輯檔案
- 掌握鍵盤快捷鍵以提高你的命令列效率
============課程內容: 詳細介紹============
本課程從深入研究混亂的技術術語開始,如終端、shell、核心、Unix、Unix-Like、GNU、Linux和Bash。瞭解命令列的背景和原因以及它的歷史對我們今天的機器仍有影響,這一點很重要。
然後,我們將重點轉移到所有命令遵循的一般模式和結構,包括選項和參數。我們定義的這個藍圖將為我們在整個課程的其餘部分所涉及的每一個其他主題提供資訊。你還將學習如何使用 man、help、which 和 type 等命令來了解更多關於特定命令的資訊。
接下來,我們將介紹超級重要的 Linux 資料夾結構,並學習用於瀏覽機器的基本命令,包括 ls、pwd 和 cd。你很快就會成為一個專家級的導航員。
在那裡,我們學習如何使用 touch、mkdir 和 file 等命令從命令列建立新的檔案和資料夾。接下來,我們將深入研究一個內置於命令列的特殊文字編輯器–Nano。你將學會使用 Nano 開啟和編輯檔案,掌握各種 Nano 快捷鍵,甚至學會如何配置 Nano 的全域性設定。
下一節涉及強大的命令 rm、mv 和cp。你將學習如何從命令列中刪除單個檔案和整個目錄,移動和重新命名檔案,以及複製檔案和資料夾。 這些是你能知道的最有用的一些命令
然後,我們稍作休息,重點介紹有用的鍵盤快捷鍵,你可以用它來提高終端機的效率,然後再深入到歷史命令和歷史擴充套件。
下一節涵蓋了大量與操作檔案內容有關的命令,包括 less、cat、tac、rev、head、tail、wc和 sort。然後,我們介紹三個標準串流:標準輸入、標準輸出和標準錯誤。你將學會重定向所有三個串流並完全控制你的資料。
接下來,我們將進入我最喜歡的話題:管線( pipelines )!在這一節中,你將學習如何將資料轉發出去。在本節中,你將學習如何透過串聯多個單獨的命令來建構複雜而強大的管線。在這一過程中,你還會了解到 tr 命令和 tee 命令。
在這裡,我們將學習使用擴充套件和替換來 “說 “出 shell 的語言。你將學習使用萬用字元進行路徑名擴充套件的來龍去脈,tilde 擴充套件,以及超級強大的大括號擴充套件。我們還將介紹算術擴充套件、命令替換以及單引號和雙引號。
接下來我們學習兩個幫助我們在機器上查詢檔案的命令:locate 和 find。我們特別關注 find 命令及其許多花哨的選項和使用情況。你將學習如何按名稱、大小、時間戳( timestamp )等查詢檔案。你還將學習如何使用 find 的 exec 選項和xargs 命令對檔案進行批次編輯。
然後,我們將重點轉移到 grep 命令。你將學習如何使用 grep 來遞迴搜尋檔案的內容,並使用正規表示式匹配複雜的檔案。
接下來,我們花一些時間討論檔案許可權的細節。你將學習如何讀取檔案屬性,瞭解讀、寫和執行的許可權。在下一節,我們將學習如何使用包括chmod、chown、sudo和su在內的命令來改變許可權。
在下一節中,我們將學習如何定製我們的 shell 體驗。你將學會編寫你自己的客製化別名,使用 shell 變數,甚至建立你自己的花式提示。然後,我們學習如何從頭開始建立我們自己的複雜命令,以及 bash 指令碼的基礎知識 到最後,你就可以編寫和執行自己的程式了。
最後,我們學習神秘的 cron daemon。你將學習看起來很奇怪的 cron 語法,以設定你自己的自動化和計劃的cronjob。
============THE END============
無論你是有一些基本命令的經驗,還是完全的初學者,本課程將幫助你的技能提升到一個新的水平。 學習命令列是一種罕見的技能,它超越了 Web 開發、資料科學、機器學習或任何其他技術學科之間的典型分工。如果你每天與電腦打交道,你將從掌握命令列中受益。 你在本課程中學到的命令將改變你與機器互動的方式,給你所有新的工作流程和策略,以及對你的電腦的權力! 更重要的是,你將離開本課程,準備征服所有在現實世界和工作中等待你的命令。
===============================
下面是課程中涉及的不完整的命令列表。
- date
- cal
- ncal
- echo
- man
- help
- which
- type
- ls
- cd
- pwd
- touch
- mkdir
- nano
- rm
- rmdir
- mv
- cp
- cat
- less
- tac
- rev
- head tail
- wc
- sort
- tr
- tee
- locate
- du
- find
- grep
- xargs
- chmod
- sudo
- su
- chown
- addgroup
- adduser
- export
- source
- crontab
- tar
目標受眾
- 任何有興趣成為一個命令列強大使用者的人!
- 希望完全控制其機器的電腦使用者
- 任何對 Web 開發、資料科學或涉及程式碼的職業感興趣的人!
- 有過一些命令列經驗的學生,想要完全掌握的學生
講師簡介
Colt Steele 開發者和新手訓練營教練
嗨!我是 Colt。我是一個認真熱愛教學的網頁開發者。最近幾年在兩個不同的身臨其境的程式設計訓練營我教人們寫程式,我幫助數百人成為網頁開發者並且改變了他/她們的生活。
最近,我帶領Galvanize的SF 6個月身臨其境計劃作為首席教練和課程總監。參加我的課程畢業後,94%的學生成為全職開發人員角色。我現在在Udacity工作,作為Web開發團隊的高級課程開發人員,我每天接觸成千上萬的學生。
我已經花了幾年時間找出把某些人變成開發者的”公式”。我已經把我的所有專業知識融入這門課程,等同於我面對面的程式設計 bootcamps。我真的很興奮,最終與你分享。我可以自信地說,這是毫無疑問的市場上最全面的課程。
加入我的課程這個瘋狂的冒險!
英文字幕:有
- 想要了解如何將英文字幕自動翻譯成中文? 請參考這篇 How-To
報名參加課程
也許你會有興趣
- 中文課程 – 零基礎七天入門Linux
- ★英語學習地圖 – 練好英文是最大的學習槓桿
- 如何找工作學習地圖 – 找工作不要靠運氣!