作業系統實驗三檔案與目錄管理

2021-03-13 17:55:33 字數 4881 閱讀 3580

實驗三檔案與目錄管理實驗

實驗名稱:檔案與目錄管理

實驗學時:2

實驗目的:通過執行ls, file, mkdir, rmdir, cd, rm等命令理解作業系統對檔案和目錄的控制和管理

實驗內容:

一、 檢視目錄與檔案內容

二、 檔案與目錄的建立、複製、刪除

實驗環境:linux os (fedora 15)

實驗步驟:

一檢視目錄與檔案內容

1、ls命令

使用方式: [-alrtafr] [name...]

功能說明:顯示指定工作目錄下之內容(列出目前工作目錄所含之檔案及子目錄)。

主要引數:

-a 顯示所有檔案及目錄 (ls內定將檔名或目錄名稱開頭為"."的視為隱藏檔,不會列出)

-l 除檔名稱外,亦將檔案型態、許可權、擁有者、檔案大小等資訊詳細列出

-r 將檔案以相反次序顯示(原定依英文本母次序)

-t 將檔案依建立時間之先後次序列出

-a 同 -a ,但不列出 "." (目前目錄) 及 ".." (父目錄)

-f 在列出的檔名稱後加一符號;例如可執行檔則加 "*", 目錄則加 "/"

-r 若目錄下有檔案,則以下之檔案亦皆依序列出

範例1:列出目前工作目錄下所有名稱是 s 開頭的檔案,愈新的排愈後面 :

ls -ltr s*

範例2:將 /bin 目錄以下所有目錄及檔案詳細資料列出 :

ls -lr /bin

範例3:

[user@qiuri ~]$ ls -l

總計 4

drwxrwxr-x 2 user user 4096 07-13 15:17 qiuri

-rw-rw-r-- 1 user user 0 07-13 15:17 xifeng

我們拿qiuri這個目錄分析一下輸出的結果的含義,首先將它從左邊開始分為7個部分。

第乙個部分:檔案型別和檔案許可權,其中第乙個字元是檔案的型別標誌,後2-10個為許可權標誌。通過第一位確認檔案屬於那種型別。

「-」表示普通檔案,

「d」表示目錄

「b」表示塊裝置檔案

「c」表示字元裝置檔案

「l」 表示符號鏈結

八進位制的語法使用數字表示各個許可權分別是r(4)、w(2)、x(1)、-(0)。例如目錄qiuri的許可權如何使用八進位制來表示:

2-4位屬主的許可權用數字表達:屬主的那三個許可權位的數字加起來的總和。比如上面的例子中屬主的許可權是rwx ,也就是4+2+1 ,應該是7;

5-7屬組的許可權用數字表達:屬組的那個許可權位數字的相加的總和。比如上面的例子中的rwx ,也就是4+2+1 ,應該是7;

8-10其它使用者的許可權數字表達:其它使用者許可權位的數字相加的總和。比如上面例子中是 r-x ,也就是4+0+1,應該是5;

如果使用八進位制數來表示該檔案的許可權,應該是775。

2、file命令

使用方式: file [-belvz][-f 《名稱檔案》][檔案或目錄...]

功能說明: 辨識檔案型別,通過file指令,我們得以辨識該檔案的型別。

主要引數:

-b  列出辨識結果時,不顯示檔名稱。

-c  詳細顯示指令執行過程,便於排錯或分析程式執行的情形。

-f《名稱檔案》  指定名稱檔案,其內容有乙個或多個檔名稱呢感,讓file依序辨識這些檔案,格式為每列乙個檔名稱。

-l  直接顯示符號連線所指向的檔案的類別。

-v  顯示版本資訊。

範例1:dir、 file、ls命令對比。如下圖:

3、more命令

使用方式: more [-dlfpcsu] [-num] [+/pattern] [+linenum] [filenames..]

功能說明:類似 cat ,不過會以一頁一頁的顯示方便使用者逐頁閱讀,而最基本的指令就是按空白鍵(space)就往下一頁顯示,按 b 鍵就會往回(back)一頁顯示,而且還有搜尋字串的功能(與 vi 相似),使用中的說明檔案,請按 h。

主要引數:

-num 一次顯示的行數

-d  提示使用者,在畫面下方顯示 [press space to continue, 'q' to quit.] ,如果使用者按錯鍵,則會顯示 [press 'h' for instructions.] 而不是 '嗶' 聲。

-l  取消遇見特殊字元 ^l(送紙字元)時會暫停的功能

-f 計算行數時,以實際上的行數,而非自動換行過後的行數(有些單行字數太長的會被擴充套件為兩行或兩行以上)

-p 不以捲動的方式顯示每一頁,而是先清除螢幕後再顯示內容

-c 跟 -p 相似,不同的是先顯示內容再清除其他舊資料

-s 當遇到有連續兩行以上的空白行,就代換為一行的空白行

-u 不顯示下引號 (根據環境變數 term 指定的 terminal 而有所不同)

+/ 在每個檔案顯示前搜尋該字串(pattern),然後從該字串之後開始顯示

+num 從第 num 行開始顯示

filenames 欲顯示內容的檔案,可為複數個數

範例:more -s testfile  逐頁顯示 testfile 之檔案內容,如有連續兩行以上空白行則以一行空白行顯示。

more +20 testfile  從第 20 行開始顯示 testfile 之檔案內容。

4、less命令

使用方式: less [option] filename

功能說明: less 的作用與 more 十分相似,都可以用來瀏覽文字檔案的內容,不同的是 less 允許使用者往回捲動以瀏覽已經看過的部份,同時因為 less 並未在一開始就讀入整個檔案,因此在遇上大型檔案的開啟時,會比一般的文書編輯器(如 vi)來的快速。

5、cat(concatenate)命令

使用方式: cat [-abeensttuv] [--help] [--version] filename

功能說明: 把檔案串連線後傳到基本輸出(螢幕或加 > filename 到另乙個檔案)

主要引數:

-n 或 --number 由 1 開始對所有輸出的行數編號

-b 或 --number-nonblank 和 -n 相似,只不過對於空白行不編號

-s 或 --squeeze-blank 當遇到有連續兩行以上的空白行,就代換為一行的空白行

-v 或 --show-nonprinting

範例:cat -n textfile1 > textfile2   把 textfile1 的檔案內容加上行號後輸入 textfile2 這個檔案裡

cat -b textfile1 textfile2 >>  textfile3 把 textfile1 和 textfile2 的檔案內容加上行號(空白行不加)之後將內容附加到 textfile3 裡。

6、head命令

使用方式: head [option] file

功能說明: head命令預設情況下顯示檔案的前10行。當同時指定多個檔案作為引數時,該命令在顯示每個檔案內容之前會先用一行顯示檔名,以示區分不同的檔案。

主要引數:

-number 顯示檔案前面number行,如:head -5 myfile 將顯示檔案的前5行。

-c n 這個選項用來顯示檔案前面n個字元,如:head -c 5 myfile 則只顯示檔案的前5個字元。

7、tail命令

使用方式: tail [+ / - num ] [option] file

功能說明:顯示指定檔案的後若干行。

主要引數:

+num 從第num行以後開始顯示。

- num 從距檔案尾num行處開始顯示。如果省略num引數,系統預設值為10。

l 以文字行為num的計數單位。與引數選項+num或- num選項同時使用時,num表示要顯示的文字行行數。

c 以位元組為num的計數單位。與引數選項+num或- num選項同時使用時,num表示要顯示的字元數。

範例:1. 如果你只想看檔案的前5行,可以使用head命令

head -5 /etc/passwd

2. 如果你想檢視檔案的後10行,可以使用tail命令

tail -20 /etc/passwd

tail -f /var/log/messages

說明:引數-f使tail不停地去讀最新的內容,這樣有實時監視的效果

二檔案與目錄的建立、複製、刪除

1、mkdir命令

使用方式: mkdir [-p] dirname

功能說明: 建立乙個名為 dirname 的子目錄

主要引數:-p 確保目錄名稱存在,不存在的就建乙個。

範例:在工作目錄下,建立乙個名為 aaa 的子目錄 : mkdir aaa

在工作目錄下的 bbb 目錄中,建立乙個名為 test 的子目錄。若 bbb 目錄原本不存在,則建立乙個。

(注:本例若不加 -p,且原本 bbb目錄不存在,則產生錯誤。)

mkdir -p bbb/test

2、rmdir命令

使用方式: rmdir [-p] dirname

功能說明: 刪除空的目錄。

主要引數: -p 是當子目錄被刪除後使它也成為空目錄的話,則順便一併刪除。

範例:將工作目錄下,名為 aaa 的子目錄刪除 :

rmdir aaa

在工作目錄下的 bbb 目錄中,刪除名為 test 的子目錄。若 test 刪除後,bbb 目錄成為空目錄,則 bbb 亦予刪除。

rmdir -p bbb/test

3、cd命令

使用方式: cd [dirname]

功能說明: 變換工作目錄至 dirname。 其中 dirname 表示法可為絕對路徑或相對路徑。

若目錄名稱省略,則變換至使用者的 home directory (也就是剛 login 時所在的目錄)。另外,"~" 也表示為 home directory 的意思,"." 則是表示目前所在的目錄,"..

" 則表示目前目錄位置的上一層目錄。

作業系統實驗7 檔案結構管理

假定磁碟上共有n個物理塊可供使用,fat就有n項,初始化時為全 0 表示對應的物理塊均可使用,當要存放檔案時,從fat中尋找為 0 的項,其對應的物理塊用來存放檔案資訊,把檔案的鏈結指標 指出物理塊號 登記在fat中,檔案的第一塊塊號登記在檔案目錄中。例如 圖7 2 檔案定位表fat 在ms dos...

實驗二 檔案與目錄的基本操作

一 實驗要求 1.掌握linux字元介面下檔案和目錄的管理 2.本實驗2學時。二 實驗要求 1.掌握簡單命令 date,cal,clear,passwd,useradd 2.掌握檔案操作命令 touch,cp,rm,mv 3.掌握目錄操作命令 mkdir,rmdir,cd,pwd,ls,ln 3.掌...

實驗三檔案管理

一 實驗目的和要求 實驗目的 使學生深入理解檔案的物理結構,磁碟空間的分配和 以便更好地掌握檔案系統的概念。實驗要求 在深入理解unix系統磁碟空閒空間管理的方式的基礎上,要求用 語言設計乙個模擬unix系統磁碟空間管理的方法。二 實驗主要內容 設計乙個模擬unix系統的空閒塊成組鏈結法對磁碟空間管...