INTRO(1)

名稱
intro - 使用者命令的介紹

描述
手冊頁的第一部分描述了使用者命令和工具，例如，檔案操作工具、各個 shell、編譯器、網頁瀏覽器、檔案和影像檢視器和編輯器，等等。

註記
Linux 是類 UNIX 的一個變種，粗略地看，很多 UNIX 下的使用者命令都可以同樣地在 Linux（以及 FreeBSD 和很多其它類 UNIX 系統上）工作。

在 Linux 下，存在 GUI（圖形使用者介面），其中您可以進行指向、點選或者拖曳，這些工作一般不需要閱讀大量手冊即可完成。傳統的 UNIX 環境是一個 CLI（命令列使用者介面），其中您鍵入命令來告訴計算機該做什麼。這樣更快、更強大，但是需要先弄清楚這些命令是什麼。下面是如何開始工作的一些基礎性指導。

  登入
要開始工作，您可能需要首先提供您的使用者名稱和密碼以開啟一個會話。login(1) 程式現在會為您啟動一個 shell（命令直譯器）。在圖形登入的時候，您需要在一個有著選單和圖示的螢幕上使用滑鼠點選，最終可以在一個視窗內啟動一個 shell。參見 xterm(1)。

  使用 shell
使用者輸入命令並將其傳送給命令直譯器，即 shell。它不是內建的，只是一個獨立程式，您可以更改自己使用的 shell。每個人都有其最喜愛的選擇。標準的 shell 被稱作 sh。參見 ash(1)、bash(1)、chsh(1)、csh(1)、dash(1)、ksh(1)、zsh(1)。

一個會話的進行可能如下所示：

    knuth login: aeb
    Password: ********
    $ date
    Tue Aug  6 23:50:44 CEST 2002
    $ cal
         August 2002
    Su Mo Tu We Th Fr Sa
                 1  2  3
     4  5  6  7  8  9 10
    11 12 13 14 15 16 17
    18 19 20 21 22 23 24
    25 26 27 28 29 30 31
    $ ls
    bin  tel
    $ ls -l
    total 2
    drwxrwxr-x   2 aeb       1024 Aug  6 23:51 bin
    -rw-rw-r--   1 aeb         37 Aug  6 23:52 tel
    $ cat tel
    maja    0501-1136285
    peter   0136-7399214
    $ cp tel tel2
    $ ls -l
    total 3
    drwxr-xr-x   2 aeb       1024 Aug  6 23:51 bin
    -rw-r--r--   1 aeb         37 Aug  6 23:52 tel
    -rw-r--r--   1 aeb         37 Aug  6 23:53 tel2
    $ mv tel tel1
    $ ls -l
    total 3
    drwxr-xr-x   2 aeb       1024 Aug  6 23:51 bin
    -rw-r--r--   1 aeb         37 Aug  6 23:52 tel1
    -rw-r--r--   1 aeb         37 Aug  6 23:53 tel2
    $ diff tel1 tel2
    $ rm tel1
    $ grep maja tel2
    maja    0501-1136285
    $

這裡鍵入 Control-D 會終止會話。

這裡的 $ 是命令提示符—這是 shell 用來提示它已經準備好接收下一條命令的方式。提示符可以用許多方式進行定製，同時可能包含諸如使用者名稱、機器名、當前目錄、時間等等附加資訊。進行一次類似 PS1="下面該做些什麼，主人？" 這樣的賦值可以按照使用者要求修改該提示的內容。

我們可以看見的命令有 date（提供日期和時間），以及 cal（提供日曆）。

命令 ls 列出當前目錄的內容—它告訴您您擁有什麼檔案。使用 -l 選項可以給出一個長列表，其中包括檔案的所有者、大小和日期，以及人們讀取和/或修改它的許可權。例如，這裡的“tel”有37位元組長，由 aeb 所有，其所有者可以讀取或寫入它，其他人只能讀取它。所有者和許可權可以使用 chown 和 chmod 命令進行修改。

命令 cat 將會顯示一個檔案的內容。（其名稱來自“concatenate and print”：所有當作引數給出的檔案將會被連線起來併發送至“標準輸出”（見 stdout(3)），這裡是終端螢幕。）

命令 cp（來自 "copy" 單詞）將會複製一個檔案。

命令 mv（來自“move”），則只會將其重新命名。

命令 diff 列出兩個檔案之間的不同之處。這裡沒有輸出，因為兩者之間沒有區別。

命令 rm（來自“remove”）刪除檔案，請小心！它不見了。沒有回收站或者類似的東西。刪除即意味著丟失。

命令 grep（來自“g/re/p”）在一個或多個檔案中尋找某個字串的出現情況。這裡它找到了 Maja 的電話號碼。

  路徑名和當前目錄
檔案存在於一個巨大的樹結構中，即檔案目錄結構。每個檔案有一個 pathname 描述從樹的樹根（被稱作 /）到這個檔案的路徑。例如，這樣的一個完整路徑名可能是 /home/aeb/tel。總是使用完整的路徑名可能不太方便，所以當前目錄下檔案的名稱可以縮寫為只給出其最後一部分。這就是在當前目錄是 /home/aeb 時 /home/aeb/tel 可以被縮寫為 tel 的原因。

命令 pwd 列印當前目錄。

命令 cd 改變當前目錄。

請交替嘗試使用 cd 和 pwd 命令並探索 cd 的用法：“cd”、“cd .”、“cd ..”、“cd /”和“cd ~”。

  目錄
命令 mkdir 建立一個新目錄。

命令 rmdir 在目錄為空的情況下刪除該目錄，若非空則提示出錯。

命令 find 具有不尋常的語法，它可以使用給定的檔名或其它屬性查詢檔案。例如，“find . -name tel”會從當前目錄（也被稱作 .）開始尋找檔案 tel。而“find / -name tel”會做同樣的工作，但是從目錄樹的根開始尋找。在以 GB 為單位計量容量的磁碟上進行大規模查詢可能耗時很多，使用 locate(1) 可能是相對更好的方案。

  磁碟和檔案系統
命令 mount 會將某些磁碟（或者軟盤、光碟等等）上尋找到的檔案系統掛載到大的檔案系統層次中。而 umount 會將其重新解除安裝。命令 df 會告訴您磁碟上還有多少空閒空間。

  程序
在一個 UNIX 系統上，有許多使用者程序和系統程序同時執行。您正與其互動的程序被稱為在 前臺 執行，其它的則在 後臺。命令 ps 將會為您顯示哪些程序是活躍的，以及這些程序的編號。命令 kill 允許您將其停止。如果沒有額外引數，這將是一個友好的請求：請停止吧。而“kill -9”命令，後面加上該程序的編號則會立刻殺死它。前臺程序通常可以透過按下 Control-C 來殺死。

  獲取資訊
系統上可能有成千上萬個命令，每個都有許多可用引數。傳統上，命令使用 man 手冊頁 進行記錄（類似當前這個文件），這樣使用“man kill”命令就可以顯示命令“kill”的使用方法（而“man man”則記錄了命令“man”的使用方法）。“man”程式將文字送給某些 分頁器，通常是 less 程式。敲擊空格鍵可以翻到下一頁，點選 q 可以退出。

文件中，習慣上會使用一個名稱和一個分類編號來指代一個手冊頁，例如 man(1)。手冊頁通常簡明扼要，允許您在忘記某些細節時進行快速查詢。對新手來說，一段介紹性文字和更多的示例和解釋可能會更有用。

許多 GNU/FSF 軟體提供了 info 檔案。輸入“info info”以查閱使用 info 程式的一段介紹。

特別的主題通常被作為 HOWTO 文件。請在 /usr/share/doc/howto/en 目錄下看一看，如果您找到了 HTML 文件的話，請使用瀏覽器閱覽。

參見
ash(1), bash(1), chsh(1), csh(1), dash(1), ksh(1), locate(1), login(1), man(1), xterm(1), zsh(1), wait(2), stdout(3), man-pages(7), standards(7)

跋
本頁面是 Linux man-pages 專案 4.09 版的一部分。該專案的描述、有關報告錯誤的資訊以及本頁面的最新版本可以在 https://www.kernel.org/doc/pan-pages/ 上找到。
本頁面中文版由中文 man 手冊頁計劃提供。
中文 man 手冊頁計劃：https://github.com/man-pages-zh/manpages-zh