Linux與命令列基礎

在家目錄執行「ls」只顯示 notes.txt,執行「ls -a」則顯示「.」「..」「.bashrc」「notes.txt」。下列哪一個是對此結果的正確說明?

  1. A「.」表示目前目錄,「..」表示上層目錄;名稱以「.」開頭的 .bashrc 是隱藏檔,不加 -a 就不會顯示
  2. B「.」表示目前目錄,「..」表示上層目錄;.bashrc 是禁止寫入的檔案,不加 -a 就不會顯示
  3. C「.」表示根目錄,「..」表示家目錄;名稱以「.」開頭的 .bashrc 是隱藏檔,不加 -a 就不會顯示
查看答案與解析

正確答案:A. 「.」表示目前目錄,「..」表示上層目錄;名稱以「.」開頭的 .bashrc 是隱藏檔,不加 -a 就不會顯示

每個目錄中都有代表該目錄本身的「.」與代表上層目錄的「..」這兩個項目。名稱以「.」開頭的檔案或目錄會被當作隱藏檔,ls 不加選項時不顯示,加上 -a(all)才會顯示。.bashrc 這類 shell 或工具的設定檔,常取隱藏檔的名稱,以免在平常的清單中顯得雜亂。是否顯示只由名稱決定,與檔案權限無關。

  • A. 正確。「.」與「..」的意義和隱藏檔的處理方式都說明正確。
  • B. ls 是否顯示,取決於名稱是否以「.」開頭,與寫入權限無關。
  • C. 根目錄寫作「/」,家目錄寫作「~」。「.」與「..」是該目錄本身與其上層目錄。
練習這個領域 前往領域頁面

Linux與命令列基礎的其他題目

  1. 依序執行上面的指令時,最後兩個 cat 的結果是下列何者?
  2. 某個目錄中有 a1.txt、a2.txt、a10.txt、b1.txt、c1.txt、a1.csv 共6個檔案。在此目錄執行「ls [ab]?.txt」時,顯示的檔案數量是下列何者?
  3. 對檔案 run.sh 執行「chmod 754 run.sh」後,「ls -l run.sh」那一行開頭顯示的權限表示法是下列何者?
  4. touch 以 666、mkdir 以 777 去掉 umask 的位元,作為新檔案與新目錄的權限。在 umask 為 027 的 shell 中建立新檔案與新目錄時,兩者權限的組合何者正確?
  5. 目錄 d 的權限為 rwx--x--x(711),其中的檔案 f.txt 的權限為 rw-r--r--(644)。既不是擁有者也不是超級使用者的使用者執行「ls d」與「cat d/f.txt」時,結果是下列何者?