unix目錄文件
① UNIX下如何顯示文件夾以及文件夾內所有文件的大小
-sk . 或 -sh . ,也可以把點號換成目錄路徑,可統計整個目錄下所有文件的大小總和
ls -l|tr -s " "|cut -f5,8 -d ' ' 只顯示每個文件的大小,也可以用awk實現
② 查看unix系統根目錄下有哪些子目錄
^查看的方法樓上都說了:
1)你切換到根,使用cd /;
2)list目錄列表,使用ls -l | grep '^d'比較給力(不是目錄的被過濾了,雖說根下一般沒有文件);
關於unix標准文件系統需要的目錄,推薦看下Filesystem Hierarchy Standard,解釋比較完整
http://www.pathname.com/fhs/
③ unix find命令在根目錄下查文件夾
find ./ | grep '關鍵字'
加個|通道符就可以了
==
腳本解釋:用find ./ 可列出當前文件夾下所有
==
find ./
結果
./
./a
./a/b
./a/b/c
./a/b/c/SB6D2003A0
./a/b/c/PA4D1712A0
./a/b/c/PA4C1559A0
./a/b/c/SB8E0768A0
./a/b/c/PB6D1881A0
./a/b/c/SB6D1524A0
./a/b/c/SB6E1651A0
find ./|grep 1524
結果:
./a/b/c/SB6D1524A0
④ UNIX目錄與文件
用ls-a命令是區分不了目錄文件和普通文件的,它是用來顯示隱含文件的。你可以用ls-l命令內來查看,比如有下面容內容:
#ls-l
總用量31976
-rw-r--r--1rootroot8892008-05-21anaconda-ks.cfg
-rwxr-xr-x1rootroot1402008-05-25a.sh
………………
drwxr-xr-x7rootroot40962005-12-16vmware-tools-distrib
-rwxr--r--1rootroot182008-05-20x.sh
每行第一個字元用來標識文件類型,第一個字元為「-」代表普通文件,為「d」代表目錄文件。
⑤ unix查看目錄下所有文件(不含路徑)
^只要檔案名
ls -al | awk '$1 ~ /^-/{print $NF}'
如果要加入統計檔案的數目,如是
ls -la | awk '$1 ~ /^-/{s++;print $NF}END{print "total:", s}'
⑥ 關於UNIX下 直接進目錄的命令
1.1 ls
[語法]: ls [-RadCxmlnogrtucpFbqisf1] [目錄或文件......]
[說明]: ls 命令列出指定目錄下的文件,預設目錄為當前目錄 ./,預設輸出順序為縱向按字元順序排列。
-R 遞歸地列出每個子目錄的內容
-a 列出所有文件,包括第一個字元為「.」的隱藏文件
-d 若後面參數是目錄,則只列出目錄名而不列出目錄內容,常與-l選項連
用以顯示目錄狀態。
-C 輸出時多列顯示
-x 橫向按字元順序排列
-m 輸出按流式格式橫向排列,文件名之間用逗號(,)分隔
-l 長列表輸出,顯示文件詳細信息,每行一個文件,從左至右依次是:
文件存取模式 鏈接數 文件主 文件組 文件位元組數 上次修改時間
其中文件存取模式用10個字母表示,從左至右的意義如下:
第一個字母表示文件種類,可以是以下幾種情況:
d 為目錄文件
l 為鏈接
b 為塊文件
c 為字元型文件
p 為命名管道(FIFO)
- 為普通文件
後面9個字母分別表示文件主、同組用戶、其他用戶對文件的權力,用r表示可讀,w 表示可寫,x 表示可執行。如果是設備文件,則在文件位元組數處顯示:主設備 從設備。
-n 與-l選項相同,只是文件主用數字(即UID)顯示,文件組用數字
(即GID)表示
-o 與-l選項相同,只是不顯示文件組
-g 與-l選項相同,只是不顯示文件主
-r 逆序排列
-t 按時間順序排列而非按名字
-u 顯示時間時使用上次訪問時間而非上次修改時間
-c 顯示時間時使用上次修改i節點時間而非上次修改時間
-p 若所列文件是目錄文件,則在其後顯示斜杠(/)
-F 在目錄文件後加』/』,在可執行文件後加』*』
-b 文件名中若有非列印字元,則用八進制顯示該字元
-q 文件名中的列印字元用』?』表示
-i 顯示節點號
-s 顯示文件長度時使用塊長度而非位元組長度
-f 將後面的參數解釋為目錄並列出其中的每一項
-1 每行僅列一項
[例子]:
ls 列出當前目錄下的文件
ls -al /bin 以長列表的形式列出目錄 /bin 下的所有文件,包括隱藏文件
⑦ unix中復制一個文件夾和文件夾中的所有文件,用什麼指令
cp命令
該命令的功能是將給出的文件或目錄拷貝到另一文件或目錄中,就如同DOS下的命令一樣,功能非常強大。
語法: cp [選項] 源文件或目錄 目標文件或目錄
說明:該命令把指定的源文件復制到目標文件或把多個源文件復制到目標目錄中。
該命令的各選項含義如下:
- a 該選項通常在拷貝目錄時使用。它保留鏈接、文件屬性,並遞歸地拷貝目錄,其作用等於dpR選項的組合。
- d 拷貝時保留鏈接。
- f 刪除已經存在的目標文件而不提示。
- i 和f選項相反,在覆蓋目標文件之前將給出提示要求用戶確認。回答y時目標文件將被覆蓋,是互動式拷貝。
- p 此時cp除復制源文件的內容外,還將把其修改時間和訪問許可權也復制到新文件中。
- r 若給出的源文件是一目錄文件,此時cp將遞歸復制該目錄下所有的子目錄和文件。此時目標文件必須為一個目錄名。
- l 不作拷貝,只是鏈接文件。
需要說明的是,為防止用戶在不經意的情況下用cp命令破壞另一個文件,如用戶指定的目標文件名是一個已存在的文件名,用cp命令拷貝文件後,這個文件就會被新拷貝的源文件覆蓋,因此,建議用戶在使用cp命令拷貝文件時,最好使用i選項。
$ cp - i exam1.c /usr/wang/shiyan1.c
該命令將文件exam1.c拷貝到/usr/wang 這個目錄下,並改名為 shiyan1.c。若不希望重新命名,可以使用下面的命令:
$ cp exam1.c /usr/ wang/
$ cp - r /usr/xu/ /usr/liu/
將/usr/xu目錄中的所有文件及其子目錄拷貝到目錄/usr/liu中。mv命令
用戶可以使用mv命令來為文件或目錄改名或將文件由一個目錄移入另一個目錄中。該命令如同DOS下的ren和move的組合。
語法:mv [選項] 源文件或目錄 目標文件或目錄
說明:視mv命令中第二個參數類型的不同(是目標文件還是目標目錄),mv命令將文件重命名或將其移至一個新的目錄中。當第二個參數類型是文件時,mv命令完成文件重命名,此時,源文件只能有一個(也可以是源目錄名),它將所給的源文件或目錄重命名為給定的目標文件名。當第二個參數是已存在的目錄名稱時,源文件或目錄參數可以有多個,mv命令將各參數指定的源文件均移至目標目錄中。在跨文件系統移動文件時,mv先拷貝,再將原有文件刪除,而鏈至該文件的鏈接也將丟失。
命令中各選項的含義為:
- I 交互方式操作。如果mv操作將導致對已存在的目標文件的覆蓋,此時系統詢問是否重寫,要求用戶回答y或n,這樣可以避免誤覆蓋文件。
- f 禁止交互操作。在mv操作要覆蓋某已有的目標文件時不給任何指示,指定此選項後,i選項將不再起作用。
如果所給目標文件(不是目錄)已存在,此時該文件的內容將被新文件覆蓋。為防止用戶在不經意的情況下用mv命令破壞另一個文件,建議用戶在使用mv命令移動文件時,最好使用i選項。
需要注意的是,mv與cp的結果不同。mv好象文件「搬家」,文件個數並末增加,而cp對文件進行復制,文件個數增加了。
例1:將/usr/xu中的所有文件移到當前目錄(用「.」表示)中:
$ mv /usr/xu/ * .
例2:將文件wch.txt重命名為wjz.doc
$ mv wch.txt wjz.doc
rm命令
在linux中創建文件很容易,系統中隨時會有文件變得過時且毫無用處。用戶可以用rm命令將其刪除。該命令的功能為刪除一個目錄中的一個或多個文件或目錄,它也可以將某個目錄及其下的所有文件及子目錄均刪除。對於鏈接文件,只是刪除了鏈接,原有文件均保持不變。
rm命令的一般形式為:
rm [選項] 文件…
如果沒有使用- r選項,則rm不會刪除目錄。
該命令的各選項含義如下:
- f 忽略不存在的文件,從不給出提示。
- r 指示rm將參數中列出的全部目錄和子目錄均遞歸地刪除。
- i 進行互動式刪除。
使用rm命令要格外小心。因為一旦一個文件被刪除,它是不能被恢復的。例如,用戶在輸入cp,mv或其他命令時,不小心誤輸入了rm命令,當用戶按了回車鍵並認識到自己的錯誤時,已經太晚了,文件已經沒有了。為了防止此種情況的發生,可以使用rm命令中的 i選項來確認要刪除的每個文件。如果用戶輸入y,文件將被刪除。如果輸入任何其他東西,文件將被保留。在下一個例子中,用戶要刪除文件test和example。然後會被要求對每個文件進行確認。用戶最終決定刪除example文件,保留test文件。
$ rm - ii test example
Remove test ?n
Remove example ?y
⑧ unix系統v的目錄項包含哪些內容
不同文件系統的inode內容不太一樣,但通常都含有以下信息: struct inode { int i_mode; 文件類型(目錄、塊設備、字元設備、普通文件、許可權等) char i_nlink; 文件硬鏈接數 char i_uid; 屬主ID(UID) char i_gid; 屬主組ID(GID) char i_size0; 文件大小 char *i_size1; 文件所使用的磁碟塊的實際數目 int i_addr[8]; 塊地址數組 int i_atime[2]; 最近一次訪問時間 int i_mtime[2]; 最近一次修改時間 int i_ctime[2]; 最近inode更改時間 };
⑨ 在UNIX中 怎麼刪除該目錄中所有文件夾,以及文件夾下所有文件 謝謝
首先需要知道的是 文件夾不為空的時候是無法刪除的。所以刪除文件夾之前需要把其中的文件都刪除
可以這樣子操作
第一步 刪除文件夾下的所有的文件
rm -f ./*/*
第二步 刪除文件夾
rmdir *
⑩ UNIX 下目錄也是文件,那目錄文件存放在哪裡,存放目錄文件的目錄的目錄文件存放在什麼目錄里
有個最大的總目錄,寫在硬碟的最開始的位置,他是特殊的。普通的目錄只是普通的文件,和其他文件一樣隨便存放在硬碟的塊區上,只是存放格式比較特殊,不過還是總目錄告訴操作系統,這是個目錄的,以目錄的方法讀這個塊區上的數據。