Linux 基本命令

我們學習了基本的 Linux 命令後,檔案管理就變得簡單了。

列出檔案 ls

如果要檢視 UNIX 或 Linux 系統上的檔案列表,請使用 ls 命令。

它顯示當前目錄中的檔案列表。

注意:

  • 目錄以藍色表示。
  • 檔案用白色表示。
  • 你會在不同版本的 Linux 中找到類似的配色方案。
username@hostname:~$ ls
bin  git  Test

你可以使用 ls -R 來顯示不僅在目錄中而且還在子目錄中的所有檔案。

注意: 該命令區分大小寫。如果輸入 ls -r,你將收到錯誤訊息。

ls -al 提供檔案的詳細資訊。該命令以柱狀格式提供資訊。這些列包含以下資訊:

資訊
1 檔案型別和訪問許可權
2 檔案的硬連結數
3 檔案的所有者和建立者
4 所有者所在組
5 以位元組為單位的檔案大小
6 日期和時間
7 目錄或檔名

我們來看一個例子,

dishan@vultr:~/git/ProductivityCodes/Productivity$ ls -al
total 15972
-rw-rw-r-- 1 dishan dishan     5135 Sep 13 09:11 test1.txt
-rw-rw-r-- 1 dishan dishan     1919 Sep 13 09:11 test2.txt
-rw-rw-r-- 1 dishan dishan     3109 Sep 13 09:11 test1.md

列出隱藏檔案

任何以 . 開頭的目錄/檔案除非你主動請求,否則它們不會被看到。要檢視隱藏檔案,可以使用下面命令。

ls -a

建立和檢視檔案

cat 命令用於顯示文字檔案。它還可用於複製,組合和建立新的文字檔案。讓我們看看它是如何工作的。

要建立新檔案,請使用該命令

  1. cat > filename
  2. 新增內容
  3. Ctrl + d返回命令提示符。

要檢視檔案,請使用命令 -

cat filename

組合 2 個檔案的語法是 -

cat file1 file2 > newfilename

這樣我們把檔案 1 和檔案 2 結合在了一起。

只要輸入此命令並按Enter鍵,檔案就會連線在一起,但是你看不到結果。這是因為 Bash Shell 是靜默型別。它永遠不會給你確認訊息,如 OKCommand Successfully Executed。它只會在出現問題或發生錯誤時顯示訊息。

要檢視新的組合檔案 newfilename,請使用該命令

cat newfilename

刪除檔案

rm 命令在不需要確認的情況下從系統中刪除檔案。

刪除檔案使用語法 -

rm filename

移動和重新命名檔案

要移動檔案,請使用下面的命令。

mv filename new_file_location

假設我們要將檔案 sample2 移動到 /home/username/Documents。使用命令

$ mv sample2 /home/username/Documents

mv 命令需要超級使用者許可權。假如我們以普通使用者身份登陸的話,我們需要切換到超級使用者,

sudo command_you_want_to_execute

sudo 程式允許常規使用者使用超級使用者或 root 的安全許可權執行程式。

sudo 命令將要求密碼驗證。但是,你不需要知道 root 密碼。你可以提供自己的密碼。驗證後,系統將呼叫請求的命令。

guru99@VirtualBox:~$ sudo mv sample2 /home/quru99/Documents 

[sudo] password for guru99: ****

guru99@VirtualBox:~$ 

對於重新命名檔案,你可以用,

mv filename newfilename

注意:預設情況下,你為 sudo 輸入的密碼每個終端保留 15 分鐘。這樣就無需再次輸入密碼。

僅當命令涉及不屬於執行命令的使用者或組所擁有的檔案或目錄時,才需要 root/sudo 許可權。

資料夾操作

我們已經學了很多的檔案操作了,讓我們學習一些資料夾命令。

建立目錄

可以使用以下命令在 Linux 作業系統上建立目錄,

mkdir directoryname

此命令將在你當前的工作目錄中建立一個子目錄,該子目錄通常是你的 主目錄

例如,

mkdir mydirectory

如果要在 主目錄 以外的其他位置建立目錄,可以使用以下命令 -

mkdir 

比如,

mkdir /tmp/MUSIC

將在 /tmp 目錄下建立一個目錄 Music

你還可以一次建立多個目錄。

$ mkdir /tmp/MUSIC /tmp/VIDEO

刪除目錄

要刪除目錄,請使用命令 -

rmdir directoryname

例如,

rmdir mydirectory

它將刪除資料夾 mydirectory

提示:確保你要刪除的目錄下沒有檔案/子目錄。在刪除父目錄之前,首先刪除裡面的檔案和子資料夾。

重新命名資料夾

mv(move)命令(前面介紹過)也可用於重新命名目錄。使用以下給定的格式:

mv directoryname newdirectoryname

其他重要命令

###Man 命令

man 代表 manual,它是 Linux 作業系統的參考書。它類似於流行軟體中的 HELP 檔案。

要查詢你不理解的任何命令的幫助,你可以鍵入

man 

終端將開啟該命令的幫助說明。

例如,如果我們鍵入 man man 並按 Enter 鍵,終端會給我們關於 man 命令的資訊。

dishan@vultr:~$ man man
MAN(1)                        Manual pager utils                        MAN(1)

NAME
       man - an interface to the on-line reference manuals

SYNOPSIS
       man  [-C  file]  [-d]  [-D]  [--warnings[=warnings]]  [-R encoding] [-L
       locale] [-m system[,...]] [-M path] [-S list]  [-e  extension]  [-i|-I]
       [--regex|--wildcard]   [--names-only]  [-a]  [-u]  [--no-subpages]  [-P
       pager] [-r prompt] [-7] [-E encoding] [--no-hyphenation] [--no-justifi‐
       cation]  [-p  string]  [-t]  [-T[device]]  [-H[browser]] [-X[dpi]] [-Z]
       [[section] page[.section] ...] ...
       man -k [apropos options] regexp ...
       man -K [-w|-W] [-S list] [-i|-I] [--regex] [section] term ...
       man -f [whatis options] page ...
       man -l [-C file] [-d] [-D] [--warnings[=warnings]]  [-R  encoding]  [-L
       locale]  [-P  pager]  [-r  prompt]  [-7] [-E encoding] [-p string] [-t]
       [-T[device]] [-H[browser]] [-X[dpi]] [-Z] file ...
       man -w|-W [-C file] [-d] [-D] page ...
       man -c [-C file] [-d] [-D] page ...
       man [-?V]

DESCRIPTION
       man is the system's manual pager.  Each page argument given to  man  is
       normally  the  name of a program, utility or function.  The manual page
       associated with each of these arguments is then found and displayed.  A
       section,  if  provided, will direct man to look only in that section of
       the manual.  The default action is to search in all  of  the  available
       sections  following  a pre-defined order ("1 n l 8 3 2 3posix 3pm 3perl
       3am 5 4 9 6 7" by default, unless overridden by the  SECTION  directive
       in /etc/manpath.config), and to show only the first page found, even if
       page exists in several sections.

       The table below shows the section numbers of the manual followed by the
       types of pages they contain.
 Manual page man(1) line 1 (press h for help or q to quit)

history 命令

history 命令顯示你在當前終端中過去使用的所有命令。這可以幫助你參考你輸入的舊命令,並在操作中重複使用它們。

dishan@vultr:~$ histroy
  1  man man
  2  history

clear 命令

此命令清除終端上的所有文字,為你提供一個乾淨的視窗,就像重新啟動終端一樣。

dishan@vultr:~$ clear

將命令貼上到終端中

很多時候你必須在終端上鍵入長命令。嗯,它有時會很煩人,如果你想避免這種情況,那麼複製,貼上命令就可以解救了。

對於複製來自源的文字,你可以使用Ctrl + C,但是要在終端上貼上它,你需要使用Ctrl + Shift + P。你也可以用Shift + Insert或在選單上選擇 Edit->Paste

注意:Linux 升級後,這些快捷方式會不斷變化。你可以通過 Terminal>Edit>Keyboard Shortcuts 來設定首選快捷方式。

在 Unix/Linux 中列印

讓我們嘗試一些簡單的命令,來以你想要的格式列印檔案。此外,你的原始檔案不會受到你所執行格式的影響。我們開始來學習這些命令及其用法。

pr 命令

此命令有助於格式化檔案以在終端上列印。此命令有許多選項可用於對檔案進行所需的格式更改。下面列出了最常用的 pr 選項。

選項 功能
-x 將資料分為 x
-h “header” header 值指定為報告頭部資訊
-t 不列印標題和上/下邊距
-d 雙重輸出檔案
-n 給所有行標上行號
-l page length 定義頁面中的行(page length)。預設值為 56
-o margin 按頁邊距數格式化頁面

讓我們試一些這些選項並看看它們的效果。

分配標題

語法是:

pr -h "Header" Filename

-h 選項將 Header 值指定為 Filename 的頭部資訊。

顯示所有含有數字的行

語法是:

pr -n Filename

此命令表示將檔案中所有行標上行號。

這些是可用於修改檔案格式的一些 pr 命令選項。

列印檔案

一旦你完成格式化,現在是時候開始真正列印檔案了,你需要使用以下命令:

lp Filename

或者,

lpr Filename

如果要列印多份檔案,可以使用數字來指定份數。

$ lp -n10 test.txt

或者,

$ lpr 10 test.txt

如果你安裝了多臺印表機,則可以指定特定的印表機,

$ lp -dHPofficejet test.txt

或者,

$ lpr -dHPofficejet test.txt

安裝軟體

在 Linux/UNIX 中,安裝檔案作為包分發。但是程式包只包含程式本身。任何相關元件都必須單獨安裝,這些元件通常有自己的安裝包。

你可以使用 apt 命令安裝或刪除軟體包。讓我們使用命令更新系統中所有已安裝的軟體包 -

sudo apt-get update

在 Ubuntu 上安裝程式的簡單而流行的方法是使用軟體中心 Software Center,因為它上面有大多數軟體包,它比從網際網路上下載的檔案安全得多。

傳送電子郵件

要通過終端傳送郵件,你需要安裝軟體包 mailutils

命令語法是 -

sudo apt-get install mailutils

完成後,你可以使用以下語法傳送電子郵件。

mail -s `subject` -c 'cc-address' -b 'bcc-address' 'to-address'

比如,

dishan@vultr:~$ mail -s "Test Email" test@example.com
Hi,
This is a test Email.

寫完郵件後,按Ctrl + D後郵件將被髮送到上述地址。

複習

  • 你可以直接從終端格式化和列印檔案。你對檔案執行的格式化不會影響檔案內容
  • 在 Unix/Linux 中,軟體以包的形式安裝。包中包含程式本身。任何相關元件都需要單獨下載。
  • 你也可以使用 mail 命令從終端傳送電子郵件

備忘單

下面是我們在本教程中學到的 Linux 命令

  • 命令 描述
    ls 列出當前工作目錄中的所有檔案和目錄
    ls - R 列出子目錄中的檔案
    ls - a 列出隱藏檔案
    ls - al 列出包含許可權、大小、所有者等詳細資訊的檔案和目錄。
    cat > filename 建立一個新檔案
    cat filename 顯示檔案內容
    cat file file2 > file3 連線兩個檔案(file1,file2)並將輸出儲存在一個新檔案(file3)中
    mv file "new file path" 將檔案移動到新位置
    mv filename new_file_name 將檔案重新命名為新檔名
    sudo 允許常規使用者使用超級使用者或 root 的安全許可權執行程式
    rm filename 刪除檔案
    man 提供有關命令的幫助資訊
    history 提供當前終端會話中鍵入的所有過去命令的列表
    clear 清除終端
    mkdir directoryname 在當前工作目錄或指定路徑中建立新目錄
    rmdir 刪除目錄
    mv 重新命名目錄
    pr -x 將檔案分為 x
    pr -h 為檔案指定頭資訊
    pr -n 用行號表示檔案
    lp -d lp -P
    apt-get 用於安裝和更新包的命令
    mail -s' subject'-c'cc-address'-b'bcc-address''to-address' 命令傳送電子郵件
    mail -s Subject to-address <Filename 傳送帶附件的電子郵件的命令