1.57k likes | 1.72k Views
第 9 章. 文字環境的操作. 本章重點. 9-1 如何進入文字模式 9-2 登入、登出、關機 9-3 檔案與目錄的操作 9-4 使用光碟及軟碟機 9-5 在背景執行程序 9-6 排程工作 9-7 打包、壓縮與解壓縮 9-8 其他常用指令. 前言. 雖然 Linux 已經提供了漂亮的 X Window 視窗操作介面 , 但有些功能在文字模式下操作 , 卻更顯得方便。因此本章中我們將為您介紹一些在 Linux 文字模式下常用的指令 , 讓使用者熟悉文字模式的基本操作方法。. 9-1 如何進入文字模式.
E N D
第 9 章 文字環境的操作
本章重點 • 9-1 如何進入文字模式 • 9-2 登入、登出、關機 • 9-3 檔案與目錄的操作 • 9-4 使用光碟及軟碟機 • 9-5 在背景執行程序 • 9-6 排程工作 • 9-7 打包、壓縮與解壓縮 • 9-8 其他常用指令
前言 • 雖然 Linux 已經提供了漂亮的 X Window 視窗操作介面, 但有些功能在文字模式下操作 , 卻更顯得方便。因此本章中我們將為您介紹一些在 Linux 文字模式下常用的指令, 讓使用者熟悉文字模式的基本操作方法。
9-1 如何進入文字模式 • 安裝完 Linux 進入 X Window 的圖形模式後, 您可以使用下列幾種方式, 進入文字模式 (稍後會介紹詳細的操作方式): • 在 X Window 中開啟文字模式視窗。 • 切換虛擬主控台進入文字模式。 • 開機直接進入文字模式。 • 在本章中, 這三種操作模式我們一律以文字模式來稱呼。
9-1-1 在 X Window 中開啟文字模式視窗 • 我們以預設的 GNOME 桌面環境為例, 在 X Window 下進入文字模式最簡單的方式, 就是按概覽鈕, 切換到應用程式頁次的系統工具類別 , 然後按終端機圖示開啟文字模式視窗: • 您會看到有 2 個終端機圖示, 其差別僅在於文字和底色的配置不同罷了。本書將一律採白底黑字的配色。
在 X Window 中開啟文字模式視窗 • 在文字模式視窗中, 可以用 + 與 + 鍵來捲動視窗內容。
9-1-2 切換虛擬主控台進入文字模式 • Linux 主機在主控台 (console) 下提供了 7 個虛擬主控台, 在每一個虛擬主控台中可以執行各自的程式。我們可以在登入 X Window 系統後的任何時間, 按下 + + 來切換到其他的虛擬主控台, 其中的是指 是指 到 的功能鍵:
切換虛擬主控台進入文字模式 • 主控台操作模式就使用者坐在 Linux 主機前直接操作電腦。
切換虛擬主控台進入文字模式 • 您也可以在 X Window 登入畫面一出現的時候, 就按 + + 直接登入文字模式的虛擬主控台。 • 文字模式虛擬主控台中的鍵盤操作方式與文字模式視窗相似。如果要捲動螢幕內容, 請按 + 或 + 鍵即可。
9-1-3 開機直接進入文字模式 • 如果您不習慣在圖形介面下操作, 也可以將系統設定成開機後, 直接在文字模式下登入。 • Fedora 以往是以 /etc/inittab 這個檔案來決定開機時執行什麼模式, 但從第 15 版開始改用 /etc/systemd/system/default.target 這個檔案來決定系統預設的模式。Fedora 提供了 2 組常用設定: • multi-user:文字模式, 相當於執行 init 3指令 • graphical-user:圖形介面模式, 也就是系統安裝完成時, 預設的執行模式, 相當於執行 init 5指令
開機直接進入文字模式 • 要設定開機時進入文字模式, 請切換到文字模式虛擬主控台, 並以 root 帳號登入系統, 然後如下操作:
開機直接進入文字模式 • 若爾後想再改回開機時時進入圖形介面, 則可如下操作:
開機直接進入文字模式 • 在文字模式下登入系統後, 若要進入 X Window, 可於指令列執行 startx指令。而按下 + + 鍵, 亦可切換到其他的虛擬主控台。
9-2 登入、登出、關機 • Linux 是一個可供多人使用的作業系統, 每個人必須用自己的帳號登入系統, 並在不用的時候登出。此外, 系統管理人員還必須知道如何關閉或重新啟動系統。 • 本章所介紹的指令, 若指令提示符號為 "[root@free ~]#", 表示必須使用 root 權限才能執行, 所以請以 root 帳號登入, 或使用 su - 切換為 root 帳號執行這些指令。
登入、登出、關機 • 上一節我們已經將系統設定在文字模式下登入。文字模式下的登入/登出介面與第 7 章所介紹的視窗模式有很大的不同, 底下就來介紹如何在文字模式下登入系統。
9-2-1 登入系統 • 進入 Linux 系統的第一件事情是登入 (login) 系統, 使用者必須先有該主機的帳號才能登入。一個帳號包括使用者名稱和密碼兩個部份 (關於如何建立新的使用者, 請參考第 18-2 節), 使用者必須正確輸入才能進入系統, 登入系統的畫面如下:
登入系統 • 到此階段, 使用者算是通過系統的帳號驗證, 成功的進入系統了。但這並不表示可以使用系統所有功能, 還必須視所登入的帳號有多大的權限而定 (關於使用者權限的介紹, 請參考第 18 章)。
9-2-2 登出系統的 logout 指令 • 登出 (logout) 是登入的相對動作, 登入系統後, 若要離開系統, 使用者只要直接下達logout 指令即可:
登出系統的 logout 指令 • 請特別注意!登出系統之後, 可不要立刻就關機。Linux 是個多人使用的作業系統, 登出系統只是結束自己的工作。如果要關機, 請看接下來介紹的 shutdown指令。
如何查詢指令的用法? • 在 Linux 系統中, 如果對某指令的功能不大清楚, 可以使用 man指令查詢線上說明: • 大多數指令的語法, 還可以透過 -h 或 --help 參數查詢。例如 ls 指令的語法可藉由 ls --help或上述 man ls指令查得。
9-2-3 關機或重新開機的 shutdown 指令 • shutdown指令可以關閉所有程序, 並依使用者的需要, 重新開機或關機。參數說明如下: • 立即關機:-h 參數讓系統關機。範例如下: 接著系統將依序關閉各項程序及服務。若您的電腦支援軟體關機, 系統會直接關機;若不支援則必須自行關閉電源。
關機或重新開機的 shutdown 指令 • 指定關機時間:加上 time 參數可指定關機的時間; 或設定多久時間後執行shutdown指令。time 參數有兩種模式: "hh:mm" 或 "+m"。"hh:mm" 表示幾點幾分關機, 例如 shutdown 10:45指令表示 10:45 執行 shutdown指令;"+m" 表示 m 分鐘後關機。範例如下: • shutdown指令只能指定關機的時間, 無法指定日期。若您想在特定的日期關機, 請參考 9-6-6 節搭配 at 指令使用。
關機或重新開機的 shutdown 指令 • 設定關機前的通知訊息:warning-message 參數可指定要送給所有登入使用者看的訊息。範例如下:
關機或重新開機的 shutdown 指令 • 關機後重新開機:-r 參數設定關機之後重新啟動。範例如下: • -k 參數:不會真的關機, 只會送出系統訊息。 • -c 參數:取消關機。只有在沒有使用立即關機的參數時 (如 +0 或 now) 才有用。 • shutdown 指令不一定要在本機執行, 以 telnet 或ssh 登入遠端機器時 (請參考 15-2 節), 同樣可執行 shutdown -h now指令。
9-2-4 重新啟動電腦的 reboot 指令 • 顧名思義, reboot指令是用來重新啟動系統的。常用的參數如下: • -p 參數:搭配此參數可關機。 • -f 參數:立即關機或重新開機, 不等待其他程式結束。 • 雖然reboot 指令有幾個參數可以使用, 但一般只需要單獨執行 reboot指令就可以了。
讓 + + 鍵無效 • 在 Linux 中直接按下 + + 鍵, 也會重新開機。如果您不希望任何人利用這組組合鍵隨意重新啟動電腦, 請刪除 /lib/systemd/system/ctrl-alt-del.target 這個檔案, 就可以讓按 + + 鍵重新開機的功能失效了。
9-3 檔案與目錄的操作 • 在文字模式下, 最常使用的指令便是瀏覽目錄和檔案的指令, 也就是本節要介紹的主題。
9-3-1 列出檔案清單的 ls 指令 • ls (list) 指令是相當常用的指令, 用來顯示目前目錄中的檔案和子目錄清單。配合參數的使用, 能以不同的方式顯示目錄內容。底下我們列出一些常用的範例: • 顯示目前目錄的內容:
列出檔案清單的 ls 指令 • 當執行 ls 指令時, 並不會顯示名稱以 "." 開頭的檔案。因此可加上 "-a" 參數指定要列出這些檔案:
.、. .、~ 和 / • 在目錄的使用上, 有幾個特別的用法:"." 表示目前目錄, ".." 表示上一層目錄, "/" 表示系統根目錄, "~" 則為使用者家目錄或稱使用者專屬目錄。 • 其中使用者家目錄, 即使用者登入時所在的目錄。例如 root 使用者的家目錄為 /root, 而 tony 的使用者家目錄為 /home/tony 。
列出檔案清單的 ls 指令 • 以較詳細的格式顯示檔案 (這些顯示格式所代表的意義, 請參考 19-3 節):
列出檔案清單的 ls 指令 • 以 "-s" 參數顯示每個檔案所使用的空間, 並以 "-S" 參數指定依所佔用空間的大小排序: • 在 ls指令後直接加上欲顯示的目錄路徑, 就會列出該目錄的內容:
9-3-2 切換目錄的 cd 指令 • cd (change directory) 指令可讓使用者切換目前所在的目錄。範例如下:
9-3-3 建立目錄的 mkdir 指令 • mkdir (make directory) 指令可用來建立子目錄。底下的範例會於所在目錄下建立 source 子目錄:
快速輸入指令的方法 • 在文字模式下操作指令時, 如果需要輸入與之前重複或類似的指令, 您可以按 、 鍵來回復最近執行過的命令。 • 另外當指令輸入到一半, 卻忘記指令名稱或僅記得前幾個字時, 只要按 鍵就能自動完成可能的指令, 若是尚未完成的指令有兩種以上的可能性, 再按第二次 鍵, 系統便會將所有可能的指令都列出來供您參考。關於這些功能的詳細操作方法, 請參閱 22-2 節。
9-3-4 刪除目錄的 rmdir 指令 • rmdir (remove directory) 指令可用來刪除 "空" 的子目錄: • 如果要刪除的目錄中還有檔案存在, 則可以使用稍後介紹的 rm指令。
9-3-5 複製檔案的 cp 指令 • cp (copy) 指令可以將檔案從一處複製到另一處。一般使用cp指令, 將一個檔案複製成另一個檔案或複製到某目錄時, 需要指定原始檔名, 以及目的檔名或目錄。範例如下:
複製檔案的 cp 指令 • 以下筆者舉幾個cp 指令的參數供您參考: • 顯示複製過程:加入 -v 參數可顯示指令執行過程。範例如下:
複製檔案的 cp 指令 • 遞迴複製:加入 - r 參數可同時複製目錄下的所有檔案及子目錄。範例如下:
9-3-6 刪除檔案或目錄的 rm 指令 • rm (remove) 指令可以刪除檔案或目錄。用法如下: • rm指令的常用參數如下:
刪除檔案或目錄的 rm 指令 • 強迫刪除:使用 -f 參數時, rm指令會直接刪除檔案, 不再詢問。範例如下: • 此版 Fedora 的一般使用者在刪除檔案時並不會詢問是否確定要刪除, 您可用 root 身份編輯 /etc/bashrc 檔, 在最後面加上下列內容:
刪除檔案或目錄的 rm 指令 • 一般使用者重新登入後, 使用 rm指令刪除檔案時就會詢問是否確定要刪除。 • 遞迴刪除:-r 也是一個相當常用的參數, 使用此參數可同時刪除指定目錄下的所有檔案及子目錄。範例如下:
刪除檔案或目錄的 rm 指令 • 強制刪除指定目錄:當您使用 -r 參數刪除目錄時, 若該目錄下有許多子目錄及檔案, 則系統可能會不斷的詢問, 以確認您的確要刪除目錄或檔案。若已確定要刪除所有目錄及檔案, 則可使用 -rf 參數, 如此一來, 系統將直接刪除該目錄中所有的檔案及子目錄, 不會再一一詢問: • 顯示刪除過程:使用 -v 參數。
9-3-7 顯示畫面暫停的 more 指令 • 為了避免畫面顯示瞬間就閃過去, 使用者可以使用 more指令, 讓畫面在顯示滿一頁的時候暫停, 此時可按空白鍵繼續顯示下一個畫面, 或按 鍵停止顯示。 • 當用ls 指令查看檔案列表時, 若檔案太多, 則可配合more指令使用:
顯示畫面暫停的 more 指令 • 單獨使用 more 指令時, 可用來顯示文字檔的內容: • less指令也具有讓畫面暫停的功能, 並且可以使用 、 鍵捲動畫面。
9-3-8 顯示檔案內容的 cat 指令 • cat (concatenate) 指令可以顯示檔案的內容 (經常和 more 指令搭配使用), 或是將數個檔案合併成一個檔案。範例如下: • 逐頁顯示 preface.txt 的內容:
顯示檔案內容的 cat 指令 • 將 preface.txt 附加到 outline.txt 檔案之後: • 將 news.txt 和 info.txt 合併成 readme.txt 檔: • 關於 "|"、 ">" 與 ">>" 的用法, 9-3-13 節還會再說明。
實務經驗談 • cat指令也可以配合 less指令來使用, 除了可以分頁顯示、往前頁或後頁查閱, 還可以使用 "/" 來搜尋關鍵文字, 相當方便。