Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

《保哥線上講堂》打造一個具有 Linux 溫度的 Windows 命令提示字元工具

6.034 Aufrufe

Veröffentlicht am

本簡報包含一份付費的課程錄影,需購買影片授權的人請至以下網址報名繳費:
http://www.accupass.com/go/cmder_replay

Windows 開發人員或 IT 管理人員,經常都以圖形化使用介面(GUI)操作為主。以往經常不太會開啟 Windows 內建的命令提示字元 (Command Prompt),不過在前端工程崛起的今天,即便是 Windows 平台也經常需要使用命令提示字元進行指令列操作。甚至下一代的 ASP.NET 5 開發框架,也將結合許多知名的前端工具進行開發,例如 Bower, npm, Gulp, ... 都有機會用在未來的專案上。不過,有用過 Windows 命令提示字元的人應該都知道,難用死了!

本課程將詳細介紹 Windows 10 內建命令提示字元的改進功能,讓大家能夠更順利的使用命令列工具。除此之外,本課程也將介紹另一套 cmder 工具,這套工具更大大強化了命令提示字元環境下的各種特性,加入了鍵盤快速鍵 (Keyboard hotkeys)、指令自動完成功能 ( auto-completion )、查詢歷史指令 ( history )、基本行內編輯功能 ( line-editing capabilities )、... 等等。

本課程會讓大家進行練習與實作,請務必在上課之前安裝好必備工具,尤其是 cmder 可以先下載安裝。如果作業系統能先升級 Windows 10 也可以先行升級。

Veröffentlicht in: Technologie
  • Als Erste(r) kommentieren

《保哥線上講堂》打造一個具有 Linux 溫度的 Windows 命令提示字元工具

  1. 1. 打造一個具有Linux溫度的 Windows命令提示字元工具 多奇數位創意有限公司 技術總監 黃保翕 ( Will 保哥 ) 部落格:http://blog.miniasp.com/
  2. 2. 課程大綱 • 介紹 Windows 命令提示字元 • 命令提示字元進階操作技巧 • 介紹 Windows 10 命令提示字元 • 介紹 Cmder 工具 2
  3. 3. 介紹 Windows 命令提示字元 Introducing Windows Command Prompt
  4. 4. 啟動命令提示字元 • 方法一 – 開始  搜尋“命令提示字元” • 方法二 – Win+R  cmd  Enter • 方法三 – Win+X  C 開啟命令提示字元 • 方法四 – Win+X  A 開啟命令提示字元 (系統管理員) • 方法五 – 檔案總管  選取資料夾  Alt+F, P – 檔案總管  選取資料夾  Alt+F, MA – 檔案總管  選取資料夾  Shift + 滑鼠右鍵 + W – 檔案總管  選取資料夾  Alt+2 (先加入按鈕到快速存取列) 4
  5. 5. 關於命令列介面 (Command-line interface) • 命令列介面的組成 – 提示字元 (Prompt) • G:> – 命令 (Command) • dir – 參數 (Parameters) • param1 ...paramN (多個參數之間以空白間隔) • /w • /? • --help 5
  6. 6. 關於提示字元 (Prompt) • 預設值 – $P$G • 設定方法 – PROMPT /? – PROMPT $P$G – SET PROMPT=$P$G 或 PROMPT=$P$G – SETX PROMPT $P$G (全域設定) – SETX PROMPT $P$G /M (所有使用者的全域設定) • 全域設定 – 只要設定環境變數 PROMPT 即可 • 長度限制 – Windows XP / Vista 最多 400 字元 – Widows 7 and above 最多 511 字元 6
  7. 7. 提示字元 (Prompt) 範例 • 顯示兩行提示字元 – $p$_%username%@%computername%:. • 顯示 UNC 路徑 – $M$_$P$G • 顯示目前時間 (刪除毫秒部分) – $P$S@$T$H$H$H$G$S • 復原預設值 – PROMPT – PROMPT $P$G 7
  8. 8. 命令執行與中止 • 執行命令 – Enter • 終止命令 – Ctrl+C – Ctrl+C, Ctrl+C 8
  9. 9. 命令轉向(Redirection)與管線(Pipe) • 命令轉向 – 從 A 命令讀取檔案 file1.txt • A < file1.txt – 將 A 命令的執行結果寫入 file1.txt • A > file1.txt 建立新檔 • A >> file1.txt 附加到檔案 – 將 A 命令的執行結果寫入 nul 裝置 (意即不顯示輸出) • A >nul • 命令管線 – 從 A 命令執行的結果 pipe 給 B 命令 • A | B 9
  10. 10. 更多命令轉向(Redirection)技巧 • 依序執行 commandA 與 commandB – commandA & commandB • 當 commandA 執行成功才會執行 commandB – commandA && commandB • 當 commandA 執行失敗才會執行 commandB – commandA || commandB • 綜合技巧 – commandA && commandB || commandC 10
  11. 11. 查詢可用指令 • 使用 help 命令 – help – help dir – dir /? • 線上文件查詢 – Index of the Windows CMD command line | SS64.com – Command Availability Across Microsoft Operating Systems – Command Prompt Reference | dosprompt.info 11
  12. 12. 常用命令 • cls 清除螢幕 • cd 進入特定資料夾 • mkdir 建立資料夾 • rmdir 刪除資料夾 • del 刪除檔案 • ren 更改檔案名稱 • type 顯示檔案內容 • echo 輸出一段字串內容 • copy 複製檔案 • dir 列出目錄檔案 • pushd 儲存目前路徑以供 POPD 命令使用 • popd 變更到用 PUSHD 命令儲存的路徑 • more 將輸出自動進行分頁處理,例如 dir|more • shutdown 將電腦關機或重開機 12
  13. 13. 常用鍵盤快速鍵 • 自動完成 "檔案" 或 "資料夾" – TAB 鍵 – 無法自動完成「命令」或「參數」 • 重複上次執行的命令 – 方向鍵:↑ • 善用萬用字元 ( * ) – cd /d c:prog* 取得第一個比對到的目錄 13
  14. 14. 必備技能:複製/貼上 • 未啟用「快速編輯模式」時 (預設值) – 複製:滑鼠右鍵  標記  選取範圍  Enter – 貼上:滑鼠右鍵  貼上 • 啟用「快速編輯模式」時 – 複製:直接用滑鼠選取範圍 – 貼上:滑鼠右鍵 – 啟用的缺點:不小心點到畫面時,執行緒會被暫停! 14
  15. 15. 命令提示字元進階操作技巧 Command Prompt Advanced Tips & Tricks
  16. 16. 使用 Fn 功能鍵 • F1: 一個字元一個字元的貼上上次執行的命令 • F2: 貼上上次執行的命令 (輸入複製字元) • F3: 貼上上次執行的命令 • F4: 輸入刪除字元 • F5: 貼上歷次執行的命令 (does not cycle) ( ↑ ) • F6: 貼上 Ctrl+Z 快速鍵 ( ^Z ) • F7: 顯示執行過的指令歷史 (可用鍵盤選擇執行) • F8: 貼上歷次執行的命令 (cycle) • F9: 輸入 F7 顯示的指令編號並執行 16
  17. 17. 列出資料夾與檔案清單 • tree 列出所有目錄清單 • tree /f 列出所有目錄清單(含檔案) • tree /a 列出所有目錄清單(文字格式) • tree /f /a 列出所有目錄清單(含檔案+文字格式) 17
  18. 18. 自訂命令提示字元視窗標題 • title /? • title 視窗標題 • 注意事項 – 設定視窗標題時,請不要加上雙引號 18
  19. 19. 利用 con 快速建立文字檔 • con 代表 Console 裝置,是個關鍵字(keyword) – 用來從 Console 讀取資料的裝置。 • 從 con 裝置建立檔案 – copy con file1.txt • 輸入文字 – 可輸入多行文字 • 結束輸入 – Ctrl+Z  Enter 19
  20. 20. 建立一個無法被刪除的資料夾 • 建立一個無法被刪除的資料夾 – 進入任意目錄 (不想被意外刪除的目錄) – md con • 刪除該目錄的方法 – rd con – cd .. • 注意事項 – con 後面一定要加上反斜線() 20
  21. 21. 快速調整視窗大小 • 查詢目前 Console 裝置狀態 – mode • 設定視窗大小(寬高)為 80x30 – mode 80,30 • 設定視窗大小(寬高)為 120x40 – mode 140,40 21
  22. 22. 查看網路資訊 • 查看本機網路資訊 – ipconfig /all • 查看本機連線資訊 – netstat -na -p tcp – netstat -nab -p tcp (須提升權限執行) • 執行 ping – ping – pathping • 執行域名解析 – nslookup • 追蹤路由資訊 – tracert 22
  23. 23. 其他小技巧 • 使用檔案總管拖曳功能 – 自動填入檔名路徑 – 注意: 使用系統管理者身分執行者,無法使用拖曳功能 • 掛載任意目錄為磁碟機 – subst q: c:windowsfonts • 從命令提示字元開啟檔案總管 – start . – explorer . • 調整視窗大小 – 按下 Alt+Space+P 鍵盤組合鍵 23
  24. 24. 介紹 WINDOWS 10 命令提示字元 Introducing Command Prompt in Windows 10
  25. 25. Windows 命令提示字元新功能 • 自由調整視窗大小 • 全新的設定選項 – 編輯選項 – 文字選取 • 提供許多鍵盤快速鍵 – 複製貼上 (Ctrl+C, Ctrl+V) – 選取文字 (兩階段 Ctrl+A 文字選取) – 搜尋文字 (Ctrl+F) – 關閉命令提示字元 (Alt+F4) – 切換至標記模式 (Ctrl+M) • 設定透明度視窗 25
  26. 26. 自由調整視窗大小 • 從視窗右下角進行拖曳即可自動調整視窗大小 • 新增快速鍵將視窗切換為全螢幕 – Alt+Enter – F11 • 支援自動對齊窗格 (Snap) – Win+方向鍵(上下左右) 26
  27. 27. 全新的設定選項 • 編輯選項 – 快速編輯模式 – 插入模式 – 啟用 Ctrl 鍵快速鍵 – 貼上時過濾剪貼簿內容 • 文字選取 – 啟用換行選取 – 延伸的文字選取按鍵 • 使用舊版主控台 27
  28. 28. 編輯選項 • 快速編輯模式 – 直接用滑鼠對視窗內容進行複製(選取右鍵)/貼上(右鍵) • 插入模式 – 輸入指令時預設為文字插入模式 (否則為取代模式) • 啟用 Ctrl 鍵快速鍵 – 支援 Ctrl+C (複製) , Ctrl+V (貼上) – 支援 Ctrl+F (搜尋輸出歷史中的文字) – 支援 Ctrl+M (切換至鍵盤標記模式) • 標記模式下會中止應用程式執行 • 標記模式下使用 Ctrl+C 不會中斷程式執行 • 標記模式下的快速鍵跟 Notepad 記事本中幾乎完全一樣 • 貼上時過濾剪貼簿內容 – 貼上剪貼簿內容時自動過濾無效文字 (控制字元, Tab) – 所有智慧引號 ( ’ 或 ” ) 都會自動被轉換為 ASCII 字元 28
  29. 29. 文字選取 • 啟用換行選取 – 預設選取模式為「區塊選取」(block selection) – 勾選後會變成「換行選取」(line wrapping selection) – 使用滑鼠選取時,可同時按下 Alt 鍵切換不同選取模式 • 區塊選取 vs. 換行選取 • 延伸的文字選取按鍵 – 預設選取文字必須靠滑鼠 (快速編輯模式) – 如果要靠鍵盤選取文字,必須按下 Ctrl+M 才可選取 – 勾選後,也可直接按下 Ctrl+A 選取整行文字 – 勾選後,直接按下 Shift+方向鍵 就可以開始選取 – 也可按下 Shift+Home/End/PgUp/PgDown 進行選取 – 也可按下 Ctrl+← 刪除一個字元 29
  30. 30. 更多快速鍵 • 瀏覽輸出歷史 – Ctrl + ↑ – Ctrl + ↓ – Ctrl + Home – Ctrl + End • 另一組複製貼上 – Ctrl+Ins (複製) – Shift+Ins (貼上) – 這組快速鍵與 Linux 作業系統下的主控台操作方式一致 30
  31. 31. 設定透明度視窗 • 透明度調整快速鍵 – [Ctrl]+[Shift]+[+] – [Ctrl]+[Shift]+[-] 31
  32. 32. 介紹 CMDER 工具 Cmder
  33. 33. 關於 Cmder 軟體 • 主要目的 – 打造一個更適合 Windows 使用的 Console 環境 • 主要特色 – 由 ConEmu 與 Clink 組成的強大工具 – 支援大量與 Linux 環境下相容的快速鍵 – 同時整合 cmd 與 powershell 主控台環境 – 支援多套 Linux 常用的工具程式 (cat, grep, sed, …) – 免安裝,綠色軟體,設定檔可直接由 Dropbox 同步 – 支援 alias 設定命令別名 – 支援正體中文顯示 33
  34. 34. Cmder 架構簡介 • cmder 其實結合了多套軟體,其中包括 – msysgit • 除了提供 Git for Windows 相關工具外,其實還提供了多套 Unix/Linux 環境下常用的指令列工具,例如 less, ls, tar, unzip, md5sum, grep, sed, … 等多套工具。 – ConEmu • ConEmu 是一套 Windows 主控台模擬器 (console emulator) – Clink • Clink 將 GNU Readline 函式庫整合進原生的 Windows 命令提 示字元視窗,提供命令列模式下強大的編輯與輸入能力,這也 是用了 cmder 之後會這麼像在 Linux 環境下使用的感覺。 34
  35. 35. 常見 Cmder 問題 • 設定 PowerShell 的 ExecutionPolicy – Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser • 設定預設開啟「命令提示字元」主控台 • 修正提示字元,避免使用 λ 符號 – vendorinit.bat • 關閉 Ctrl+W 快速鍵,避免視窗被意外關閉 35
  36. 36. 介紹 cmder 畫面功能 36
  37. 37. 常用選項設定 1 37
  38. 38. 常用選項設定 2 38
  39. 39. 常用選項設定 3 39
  40. 40. 常用選項設定 4 40
  41. 41. 常用選項設定 5 41
  42. 42. 常用選項設定 6 42
  43. 43. 常用選項設定 7 43
  44. 44. 常用選項設定 8 44
  45. 45. 基本操作技巧 • 用 Ctrl+` 快速切換 Cmder 視窗 • 用 Ctrl+T 建立新頁籤、Ctrl+Tab 切換頁籤 • 用滑鼠選取文字自動複製、用 Ctrl+V 貼上剪貼簿內容 • 用 Ctrl+1~n 直接切換至指定頁籤編號 • 用 Ctrl+L 清除螢幕 • 用 Ctrl+Z 復原輸入 • 用 Ctrl+W 刪除一個字元 • 用 Ctrl+D 退出命令提示字元、Alt+F4 關閉所有頁籤 • 用 Alt+Shift+1 開啟 cmd.exe • 用 Alt+Shift+2 開啟 powershell.exe • 用 Alt+Shift+3 開啟 powershell.exe (系統管理員權限)
  46. 46. 善用自動完成功能 • 此為 Clink 的功能 • 可以自動完成的資訊 – 執行檔 – 環境變數 ( %path% ) – 目錄, 檔名 • 可自動完成的命令參數 – npm – git – svn – Chocolatey – (使用 lua 語言定義)
  47. 47. 鍵盤操作技巧 • 基本行內編輯功能 (line-editing capabilities) – Ctrl+LeftKey ( ← ):鍵盤游標可向左移動一個字 – Ctrl+RightKey ( → ):鍵盤游標可向右移動一個字 – Ctrl+A:鍵盤游標直接移到最左邊(最前面) – Ctrl+E:鍵盤游標直接移到最右邊(最後面) – Ctrl+H:等同於 Backspace 按鍵 – ESC :清除目前輸入的整行 – Ctrl+Alt+J:將指令輸入切換至 vim 模式 (進階用法,不會用 vim 的人不要用喔) – Ctrl+E :在 vim 模式可按下 Ctrl+E 切換回預設模式 (Emacs) – 所有行內編輯功能幾乎與 Bash 操作一模一樣! 47
  48. 48. 設定 alias 簡化命令列操作 • 查詢使用方式 – alias /? • 設定範例 – alias e.=explorer . – alias ll=ls -laF --color $* • 刪除範例 – alias /d e. – alias /d ll • 注意事項 – 請務必加上 $* 結尾 – $* 代表使用 alias 時帶入的所有額外參數 48
  49. 49. 其他操作技巧 • 查詢現有指令 – Alt+h • 查詢命令歷史 – Ctrl+R • 主控台文字自動放大縮小 • 讓 Clink 可以直接跟原生的 Cmd.exe 搭配使用 – 執行 vendorclinkclink.bat 即可啟用 Clink 功能。 – 以系統管理員身分執行 vendorclinkclink.bat autorun -i 可將 Clink 自動注入到 Cmd.exe 之中。 – 移除 Clink 綁定,可執行 vendorclinkclink.bat autorun -u 49
  50. 50. 聯絡資訊 • The Will Will Web 記載著 Will 在網路世界的學習心得與技術分享 – http://blog.miniasp.com/ • Will 保哥的技術交流中心 (臉書粉絲專頁) – http://www.facebook.com/will.fans • Will 保哥的噗浪 – http://www.plurk.com/willh/invite • Will 保哥的推特 – https://twitter.com/Will_Huang

×