Linux 伺服器系統管理第三章 外殼命令操作 上一頁    下一頁

3-3 檔案操作命令

內容:

  • 3-3-1 顯示幕路內容 - ls

  • 3-3-2 顯示檔案內容 - cat

  • 3-3-3 以分頁顯示檔案內容 - more

  • 3-3-4 可追蹤分頁顯示 - less

  • 3-3-5 複製檔案 - cp

  • 3-3-6 刪除檔案 - rm

  • 3-3-7 螢幕複製檔案 - cat

  • 3-3-8 搬移檔案 - mv

  • 3-3-9 尋找檔案 - find

  • 3-3-10 產生空白檔案 - touch

  • 3-3-11 命令中斷 - Ctrl+c

接下來,介紹幾種較常用的檔案命令,透過這些命令會讓我們多認識點 Unix/Linux 系統。

3-3-1 顯示目錄內容 - ls

lslist)命令是用來顯示目前目錄下所擁有的檔案與子目錄,範例如下:

$ ls  [命令輸入]

下載  公共  圖片  影片  文件  桌面  模板  音樂

$ ls –a  [命令輸入]

. .bash_logout   .cache     .ICEauthority  下載  影片  模板

.. .bash_profile  .config    .local         公共  文件  音樂

.bash_history  .bashrc   .esd_auth  .mozilla   圖片  桌面

$ ls –al    [命令輸入]

總計 28

drwx------. 14 student01 student01 4096  2  2 10:17 .

drwxr-xr-x.  4 root      root        40  1  6 10:52 ..

-rw-------.  1 student01 student01  106  2  2 10:33 .bash_history

-….

drwxr-xr-x.  2 student01 student01    6  1  6 09:53 模板

drwxr-xr-x.  2 student01 student01    6  1  6 09:53 音樂

$

其中,選項 –l 表示使用長型(long)格式顯示,顯項 -a 表示所有檔案(包含隱藏檔)。使用者第一次登入系統,可利用 ls –l 命令觀察家目錄內有哪些檔案;新建使用者應該看不到任何檔案或目錄才對。

3-3-2 顯示檔案內容 - cat

catconcatenate)是『連結』檔案並列印到標準輸出上,一般都做顯示檔案內容使用,範例如下:($ cat  /etc/passwd)

$ cat /etc/passwd

root:x:0:0:root:/root:/bin/bash

……

tcpdump:x:72:72::/:/sbin/nologin

student01:x:1000:1000:student01:/home/student01:/bin/bash

student02:x:1001:1001::/home/student02:/bin/bash

上述操作中,如果檔案內容超過終端機顯示範圍,將會快速顯示所有內容,導致看不到檔案前面的資料;如果有此現象,應該使用 more 命令較為適合。

3-3-3 以分頁顯示檔案內容 - more

more 是以一頁接一頁方式顯示檔案內容,當顯示檔案超過螢幕顯示範圍時(也就是一頁),系統會暫停等待使用者按鍵,不同按鍵會有不同結果,如下:

  • Enter 鍵:增加顯示一行,最上面一行將會不見。

  • Space 鍵:空白鍵。增加顯示一頁,原來顯示資料將會不見。

  • q 鍵:離開 more 操作命令。

操作範例如下:

$ more  /etc/passwd

3-3-4 可追蹤分頁顯示 - less

雖然說 less more 的相對命令,但兩者的功能很相似,皆是分頁顯示檔案內容。less 的功能可能還比 more 強,more 顯示檔案只能往前,不能倒退,而less 卻可以往前和倒退。當執行 less 命令後,會增加兩個鍵的功能:(其他功能請參考 man less

  • 『↑』:倒回顯示檔案內容。

  • 『↓』:往前顯示檔案內容:

操作範例:(增加行號)

$ less  -N  /etc/passwd

….

3-3-5 複製檔案 - cp

cpcopy)命令可用來複製檔案,格式如下:

$ cp source_file destination_file

上述命令表示將來源檔案(source_file)複製到目標檔案(destination_file),其中檔案名稱可以包含目錄名稱。如果目標檔不存在,則會產生一個新的目標檔,如果存在的話,則會將來源檔的內容覆蓋在目標檔上,而原來目標檔的資料將不復存在。下述範例是將 /etc/passwd 檔案複製到目前工作目錄的 f1 檔案,如果 f1 不存在的話,則會產生新的 f1,如存在則覆蓋其內容。命令執行成功後,可利用 ls –l 命令觀察是否有產生新的檔案 f1,操作如下:

$ cp  /etc/passwd  f1

$ ls  -l

-rw-r--r--    1 tsnien   tsnien      21034  9  8 11:30 f1

$ cat  f1

3-3-6 刪除檔案 - rm

rmremove)命令是用來刪除檔案。檔案被刪除後將無法再回復,範例如下:

$ cp  /etc/passwd  file_3

 

$ rm  –r  file_3

rm: remove write-protected regular file `file_3'? 【詢問是否真的要刪除】

 

$ ls –l  file_3                               file_3 已不存在】

ls: file_3: No such file or directory

3-3-7 螢幕複製檔案 - cat

基本上,cat 是將檔案連結到輸出終端機上,但如果沒有指定輸出檔案名稱,則將鍵盤輸入資料連結到螢幕上,範例如下:(按 Ctrl + Z 結束輸入)(Ctrl + D 亦可)

$ cat

Good Lucky To You      【鍵盤輸入】

Good Lucky To You      【輸出連結到螢幕顯示】

?

[2]+  Stopped                 cat    【按 Ctrl + Z 結束】

我們可以利用輸出轉向(>),將原來輸出連結到螢幕的資料,轉向儲存於另一檔案,範例如下:(輸出轉向『>』容後介紹)

$ cat > f2

Good Lucky To You        【鍵盤輸入】

?

[3]+  Stopped                 cat >f2  Ctrl + Z 結束並複製到 f2

$ cat f2                   【顯示 f2 檔案內容】

Good Lucky To You

$

3-3-8 搬移檔案 - mv

mv 命令是用來將某一個檔案搬移到另一個目錄位置,原來檔案則會消失。新檔案可沿用原來檔案名稱或建立新名稱,如果檔案被搬移到同一目錄內,又建立新名稱,則有重新命名的功能,操作範例如下:

$ cp  /etc/passwd  file_1

$ mv  file_1  file_2        【將 file_1 搬移到 file_3

$ ls  -l  file_1             file_1 已不存在】

ls: file_1: No such file or directory

$ ls  -l  file_2             【已建立了一個新檔案 file_3

-rw-r--r--  1 root root 7521 Mar 30 14:31 file_3

3-3-9 尋找檔案 – find

find 命令是用來尋找某一檔案的所在位置。一般採用命令格式為 $ find / -name passwd -print,其表示由根目錄(/)開始尋找,以檔案名稱(-name)為尋找對象,檔案名稱為 passwd,如找到則顯示於終端機上(-print)。範例如下:

$ pwd                 【查詢目前所在位置】

/home/student01

$ cp  /etc/passwd  file_4         【複製產生 file_4 檔案】

$ find /home -name file_4 –print     【尋找 file_4 檔案位置】

/home/student01/file_4       【找到了】

find: /home/student02: 拒絕不符權限的操作 【其它目錄沒有搜尋權力】

$

3-3-10 產生空白檔案 - touch

命令 touch 大多用來改變檔案最近修改時間,如果被修改檔案不存在的話,則會產生一個空白檔案,並設定為當時時間為最後修改時間,操作如下:

$ touch  file_1

3-3-11 命令中斷 – Ctrl+c

操作命令可能會執行不停或執行中,不想讓它繼續執行可以利用 Ctrl +c Ctrl+z 中斷它。鍵入方法是先按住 Ctrl 鍵之後,再按c z 鍵。譬如 $ echo “輸出訊息,訊息必須兩個雙引號(“) 包起來,如果少了一個,系統會要求繼續輸入,此時可利用 Ctrl+c 中斷它,如下:

$ echo "good luck to you"    【正常輸入命令】

good luck to you

$ echo "good luck          【缺少右邊雙引號】

> ^C                    【中斷命令】

[student01@serCourse ~]$

 

翻轉工作室:粘添壽

 

Linux 伺服器系統管理 - CentOS:

 

 

 

翻轉電子書系列: