posts - 0,  comments - 5,  trackbacks - 0
          0、關于路徑的理解;

          請參考:

          《關于Linux 文件系統中路徑的理解》


          1、列文件或目錄的信息工具 ls或dir;

          ls 命令可以用于顯示目錄的內容,也可以顯示文件的屬性,比如節點、文件種類、權限、擁有者、大小、創建時間等;在目前最新版本的Linux中dir和ls命令的用法是一樣的;有興趣的不仿嘗試一下;


          1.1 ls 的基礎語法和參數;

          語法格式:

          #ls [參數]?? [目錄或文件名]

          參數:

          -a 顯示所有文件,包含隱藏文件;包括“.“和“..“
          -A 顯示所有文件,包含隱藏文件,不包括“.“和“..“目錄;
          -B 不列出文件名以~結尾的文件;
          -C 按列列出文件;
          -d 僅可以查看目錄的屬性參數及信息;
          -F 這個參數加上后,能給目錄添加上/,給可執行文件加上*,給符號鏈接加上@? 等等,來標記文件名,目的是讓用戶方便查看;
          -l 長格式輸出
          -h 習慣人們可閱讀的方式來顯示文件或目錄的大小,比如K、M或G等;
          -p 在目錄的后面附加/標記;
          -r 逆序列出文件;
          -t? 按文件最后訪問(或修改)的時間排序,最新的排在最前面;
          -U 按原始排序,
          -L 遞歸顯示,也就是說,當我們列某個目錄的下的所有文件和目錄時,能把它的下級目錄的內容顯示出來。
          --help? 獲得幫助;

          在這里,位于[]之內的都是可選的。如果您只輸入ls ,就會列出用戶所處當前目錄的所有文件,用短格式輸出,但不會列出隱藏文件。

          判斷用戶所處目錄的命令是pwd,也就是

          [root@localhost ~]# pwd
          /root


          1.2 ls 的參數示例應用;


          1.21 列出目錄下所有文件,包含或不包含隱藏文件,-a 參數及-l參數的運用;

          #ls -la [目錄名]

          如果不接目錄名,表示輸出當前用戶所處目錄內的所有文件,包括隱藏文件;

          [root@localhost ~]# pwd
          /root
          [root@localhost ~]# ls -la

          列出某一目錄下的的文件或目錄,但不包括隱藏文件,我們只用-l參數

          #ls -l? 目錄

          比如:

          [root@localhost ~]# ls? -l /root/
          總計 13968
          -rw-r--r-- 1 root root???????? 0 04-19 14:09 123.txt
          -rw------- 1 root root????? 1375 03-16 08:55 anaconda-ks.cfg
          -rw-r--r-- 1 root root???????? 2 03-27 02:00 fonts.scale
          -rw-r--r-- 1 root root????? 5423 03-16 08:52 install.log.syslog
          -rw-r--r-- 1 root root? 14087155 03-16 07:53 kernel-2.6.15-1.2025_FC5.i686.rpm
          lrwxrwxrwx 1 root root??????? 33 04-19 11:27 kernel.rpm -> kernel-2.6.15-1.2025_FC5.i686.rpm
          drwxr-xr-x 2 1000 users???? 4096 04-04 23:30 mkuml-2004.07.17
          -rw-r--r-- 1 root root???? 68012 04-04 20:28 mkuml-2004.07.17-ananas.tar.bz2
          drwxr-xr-x 2 root root????? 4096 04-19 10:53 mydir
          -rw-r--r-- 1 root root???? 53992 03-16 08:54 myinstall.log
          -rw-r--r-- 1 root root???????? 0 04-19 14:10 plinux.txt
          drwxr-xr-x 2 root root????? 4096 03-17 04:25 Public
          -rw-r--r-- 1 root root?????? 613 03-26 18:41 upgrade.log
          -rw-r--r-- 1 root root???????? 0 03-26 18:39 upgrade.log.syslog
          lrwxrwxrwx 1 root root???????? 6 04-19 11:17 yourdir -> mydir/

          說明:如果以長格式輸入,總共顯示出八段內容:

          第一段文件種類及權限,也就是類似這樣的-rw-r--r-- ,我們在前面講到,如果在這段中,第一字符表示文件的類型,如果出現-,表示普通文件。如果是d開頭的就是目錄。在這個例子中,123.txt是普通文件,而mkuml-2004.07.17就是一個目錄。關于文件的種類,請參考 :
          rw-r--r--是權限位,我們在以后的教程中會講到。
          第二段 硬鏈接個數(文件系增加一個硬鏈接,數字會增加1,默認從1開始,1表示無硬鏈接文件,如果是一個目錄,它的默認值應該是2。目錄是不能做硬鏈接的)
          如果我們不以長格式輸出的話,可以把參數省略;
          第三段 文件或目錄所占用的字節數,如果您想用K來表示,請用ls -lh /root
          第四段 最后訪問日期
          第五段 最后訪問時間
          第六段 文件名

          [root@localhost ~]# ls /root


          1.22 僅查看目錄的屬性的-d參數的運用示例;

          [root@localhost ~]# ls -ld? /etc? /boot? 注:查看/etc和/boot目錄的信息;

          drwxr-xr-x?? 4 root root? 4096 04-11 16:22 /boot
          drwxr-xr-x 108 root root 12288 04-20 12:36 /etc


          1.23 查看文件或目錄的inode節點,-i參數的運用;

          查看文件或目錄的節點,我們要用到i參數。如果節點相同,能確認他們是相同的文件,是通過通過ln 創建的硬鏈接文件;鏈接接有何用?如果您想把一個文件復制時保持原文件或目錄的節點、大小、權限以及訪問(或修改)時間都和原文件一致的文件。必須通過硬鏈接來實現,用cp命令是不可能實現的。

          比如:

          [root@localhost ~]# ls -li /root



          [root@localhost ~]# ls -li kernel*
          2408323 -rw-r--r-- 3 root root 14087155 03-16 07:53 kernel00.rpm
          2408270 lrwxrwxrwx 1 root root?????? 33 04-19 14:56 kernel1.rpm -> kernel-2.6.15-1.2025_FC5.i686.rpm
          2408323 -rw-r--r-- 3 root root 14087155 03-16 07:53 kernel-2.6.15-1.2025_FC5.i686.rpm
          2408323 -rw-r--r-- 3 root root 14087155 03-16 07:53 kernel.rpm

          我們看一下kernel00.rpm 、kernel.rpm 和 kernel-2.6.15-1.2025_FC5.i686.rpm 是不是節點相同??他們的大小是不是一樣,他們的訪問日期是不是一樣?只是他們的文件名不一樣。文件名不一樣沒有關系,這能證明其中兩個文件是由另一個文件通過ln 創建而成。

          您可以嘗試著用cp 把 kernel-2.6.15-1.2025_FC5.i686.rpm 復制為kernel002.rpm ,看看能不能保持節點相同?

          [root@localhost ~]# ls -li kernel*
          2408272 -rw-r--r-- 1 root root 14087155 04-19 16:05 kernel002.rpm
          2408323 -rw-r--r-- 3 root root 14087155 03-16 07:53 kernel00.rpm
          2408270 lrwxrwxrwx 1 root root?????? 33 04-19 14:56 kernel1.rpm -> kernel-2.6.15-1.2025_FC5.i686.rpm
          2408323 -rw-r--r-- 3 root root 14087155 03-16 07:53 kernel-2.6.15-1.2025_FC5.i686.rpm
          2408323 -rw-r--r-- 3 root root 14087155 03-16 07:53 kernel.rpm

          不是是kernel002.rpm 的節點和 kernel-2.6.15-1.2025_FC5.i686.rpm 不一樣了?


          1.24 關于排序的參數的應用;

          ls 顯示目錄的內容時,會將文件按a到z的字母順序顯示,優先級如下;

          數字?
          a-z?
          A-Z

          也就是說如果不加任何排序的參數,文件名第一個字母是數字的,將優先顯示;其次才是A-Z,然后才是a-z;下面是幾個排序的參數,大家練習一下就知道了;

          在文件的大小排序上,我們要用到-S參數;
          如果是逆序排序時,我們要用到-r參數;
          按最后訪問的時候排序,要用到-t參數;
          根據擴展名進行排序,要用到參數 -X ;

          舉例

          [root@localhost ~]# ls
          123.txt????????? fonts.scale???????? kernel?????????????????????????? myinstall.log? upgrade.log
          anaconda-ks.cfg? install.log.syslog? mkuml-2004.07.17-ananas.tar.bz2? plinux.txt???? upgrade.log.syslog

          [root@localhost ~]# ls -lS /root
          [root@localhost ~]# ls -lS
          總計 180
          -rw-r--r-- 1 root root 68012 04-04 20:28 mkuml-2004.07.17-ananas.tar.bz2
          -rw-r--r-- 1 root root 53992 03-16 08:54 myinstall.log
          -rw-r--r-- 1 root root? 5423 03-16 08:52 install.log.syslog
          drwxr-xr-x 2 root root? 4096 04-19 20:04 kernel
          -rw------- 1 root root? 1375 04-19 15:04 anaconda-ks.cfg
          -rw-r--r-- 1 root root?? 613 03-26 18:41 upgrade.log
          -rw-r--r-- 1 root root??? 21 04-19 15:06 123.txt
          -rw-r--r-- 1 root root???? 2 03-27 02:00 fonts.scale
          -rw-r--r-- 1 root root???? 0 04-19 14:10 plinux.txt
          -rw-r--r-- 1 root root???? 0 03-26 18:39 upgrade.log.syslog

          舉例:

          [root@localhost ~]# ls -lr
          總計 180
          -rw-r--r-- 1 root root???? 0 03-26 18:39 upgrade.log.syslog
          -rw-r--r-- 1 root root?? 613 03-26 18:41 upgrade.log
          -rw-r--r-- 1 root root???? 0 04-19 14:10 plinux.txt
          -rw-r--r-- 1 root root 53992 03-16 08:54 myinstall.log
          -rw-r--r-- 1 root root 68012 04-04 20:28 mkuml-2004.07.17-ananas.tar.bz2
          drwxr-xr-x 2 root root? 4096 04-19 20:04 kernel
          -rw-r--r-- 1 root root? 5423 03-16 08:52 install.log.syslog
          -rw-r--r-- 1 root root???? 2 03-27 02:00 fonts.scale
          -rw------- 1 root root? 1375 04-19 15:04 anaconda-ks.cfg
          -rw-r--r-- 1 root root??? 21 04-19 15:06 123.txt

          [root@localhost ~]# ls -lt
          總計 180
          drwxr-xr-x 2 root root? 4096 04-19 20:04 kernel
          -rw-r--r-- 1 root root??? 21 04-19 15:06 123.txt
          -rw------- 1 root root? 1375 04-19 15:04 anaconda-ks.cfg
          -rw-r--r-- 1 root root???? 0 04-19 14:10 plinux.txt
          -rw-r--r-- 1 root root 68012 04-04 20:28 mkuml-2004.07.17-ananas.tar.bz2
          -rw-r--r-- 1 root root???? 2 03-27 02:00 fonts.scale
          -rw-r--r-- 1 root root?? 613 03-26 18:41 upgrade.log
          -rw-r--r-- 1 root root???? 0 03-26 18:39 upgrade.log.syslog
          -rw-r--r-- 1 root root 53992 03-16 08:54 myinstall.log
          -rw-r--r-- 1 root root? 5423 03-16 08:52 install.log.syslog


          1.25 遞歸顯示目錄的文件,-R參數的應用;

          遞歸顯示目錄下的所有文件,如果該目錄下有子目錄,也會把子目錄的文件一并顯示出來。

          比如

          [root@localhost ~]# ls -lR /

          注:也就是把Linux下/根目錄下的所有文件顯示出來,但不會顯示隱藏文件。自己試著輸入上面的命令就知道怎么回事了。


          1.26 關于ls 輸出內容在終端顯示顏色的參數 --color;

          在一般的情況下,ls輸出內容是有顏色的,比如目錄是藍色,壓縮文件是紅字的顯示。如果沒有顏色,可以加上參數。當然也可以去掉顏色。

          --color=never? 表示輸出輸出沒有彩色
          --color=auto? 表示自動
          --color=always 表示輸出內容有彩色

          舉例:

          [root@localhost ~]# ls -la --color=never
          [root@localhost ~]# ls -la --color=any
          [root@localhost ~]# ls -la --color=always

          如果您的終端或控制臺輸出的內容沒有顏色,可以自己來定義。在當前用戶的家目錄下的.bashrc 中加入下面的一行;

          alias ls="ls --color=always"


          1.27 ls的-F參數的示例;

          [root@localhost ~]# ls -F
          crondw.sh*? kernel/? mkuml-2004.07.17-ananas.tar.bz2? openQreadme.txt@? sun.txt? upgrade.log? youdir/

          [root@localhost ~]# ls -lF
          總計 92
          -rwxr-xr-x 1 root root???? 0 04-20 14:18 crondw.sh*
          drwxr-xr-x 3 root root? 4096 04-20 14:17 kernel/
          -rw-r--r-- 1 root root 68012 04-04 20:28 mkuml-2004.07.17-ananas.tar.bz2
          lrwxrwxrwx 1 root root???? 7 04-20 14:18 openQreadme.txt -> sun.txt
          -rw-r--r-- 1 root root??? 11 04-20 14:17 sun.txt
          -rw-r--r-- 1 root root?? 613 03-26 18:41 upgrade.log
          drwxr-xr-x 6 root root? 4096 04-20 14:17 youdir/


          1.3 通配符在ls命令中的應用;

          * 代表0個或多個字符
          []內部包括任何字符
          ? 任何單個字符

          舉例:

          比如我們顯示以k開頭的所有文件,在/root目錄中的;

          [root@localhost ~]# ls /root/k*
          kernel002.rpm? kernel00.rpm? kernel1.rpm? kernel-2.6.15-1.2025_FC5.i686.rpm? kernel.rpm

          我們顯示以數字開頭的所有文件;

          [root@localhost ~]# ls [0-9]*
          123.txt? 234.txt? 2kexe.txt? 6mns.doc

          下面是一個?通配符的示例:

          [root@localhost ~]# ls *.t?t
          123.txt? 234.txt? 2kexe.txt? 333.tot? plinux.txt


          1.4 獲得ls 的幫助;

          ls 的用法比較簡單,至于更詳細的參考,還是查man和help。遇到不會的,就查手冊,我也是這么做的。

          [root@localhost ~]# ls --help
          [root@localhost ~]# man ls
          [root@localhost ~]# info ls


          2、移動文件或目錄的命令 mv ;

          mv 命令是用來移動文件或目錄的;有以下幾種格式;

          #mv file1 file2? 注:把file1移動到file2,如果file2不存在,則創建file2文件名;
          #mv file1 dir 注:把一個文件移動到一個事實存在的目錄;
          #mv dir1 dir2?? 移動目錄dir1 到 dir2 ,如果dir2不存在,則創建它;
          #mv file1 file2 file3 ... ...? dir?? 移動file1、file2、file3等多個文件到dir目錄中;
          #mv dir1 dir2 ... ... dirn?? 注:移動目錄dir1和dir2等多個目錄到dirn目錄中

          參數-i ,表示人機交互模式;提示警告信息;

          舉例:

          [root@localhost ~]# mv -i 123.txt? 234.txt
          mv:是否覆蓋“234.txt”? y 注:要在這里輸入y,表示允許覆蓋234.txt文件;如果是n,請示不允許;

          mv 也能和通配符結合一起使用,這樣能把相似特征的文件移動到某處;

          * 代表0個或多個字符
          []內部包括任何字符
          ? 任何單個字符


          舉例:比如移動以數字開頭的文件或目錄到 root目錄下的tmp目錄中;

          [root@localhost ~]# pwd
          /root
          [root@localhost ~]# mv [0-9]* tmp/
          [root@localhost ~]# ls -lh tmp/
          總計 4.0K
          -rw-r--r-- 1 root root 21 04-19 15:06 234.txt
          -rw-r--r-- 1 root root? 0 04-19 22:23 2kexe.txt
          -rw-r--r-- 1 root root? 0 04-19 22:25 333.tot
          -rw-r--r-- 1 root root? 0 04-19 22:23 6mns.doc


          3、文件或目錄的復制工具cp ;


          3.1 cp 的語法和參數

          #cp? [參數選項]?? 源文件或目錄????? 目標文件或目錄

          注:參數是可選的,常用參數比如 -r,-R,-p,-i ;

          參數說明(部份)

          -a 等同于-dpR參數一起使用;在復制過程中盡可能保留源文件或目錄的屬性;
          -b 給被覆蓋的文件做備份。比如我們把file1 復制到file2時,如果file2存在,我們把file2覆蓋掉,用這個參數就能同時生成一個file2~的文件,注意文件名后有~結尾
          -d 不間接引用符號鏈接,保持源文件和目標文件之間的硬鏈接關系;
          -f 刪除已存在的目標文件;
          -i 覆蓋已存在的目標文件之前給出警告提示,這是人機交互的選項;
          -l 建立文件硬鏈接,而不是復制;
          -p 保存源文件或目錄的最后修改時間和模式,比如要保持目標目錄或文件的屬主、組、權限和最后訪問(或修改)時間;
          -R 復制目錄時,包括淅目錄下所有的子目錄和文件;
          -s 建立源文件的符號鏈接,而不是復制源文件。源文件名必須用絕對路徑;
          -r 復制目錄時,包括淅目錄下所有的子目錄和文件;-r選項不同于-R之處在于 嘗試打開目的地文件前先刪除已存在的目的地文件
          -i 人機交互模式,顯法覆蓋已存在的文件或目錄的警告信息;
          -v 在復制之前,輸出每個文件的名字;
          --help 查看幫助 ;


          3.2 示例說明cp應用;


          3.21 參數-i的示例;

          [root@localhost ~]# ls
          anaconda-ks.cfg? install.log.syslog? Kernel.rpm?????????????????????? mydir?????? Plist? upgrade.log???????? youdir
          fonts.scale????? kernel????????????? mkuml-2004.07.17-ananas.tar.bz2? plinux.txt? sun??? upgrade.log.syslog
          [root@localhost ~]# pwd
          /root

          [root@localhost ~]# cp? -i Kernel.rpm Plist
          cp:是否覆蓋“Plist”? y

          注:人機交互在數-i的運用;如果源文件復制到目標文件,如果目標文件存在,則提示警告;


          3.22 參數-a的示例及說明;

          把源目錄復制到另外的一個目標,相當于克隆了一個目錄,源目錄和目標目錄在用戶組、權限及修改或訪問時間保持一致;

          [root@localhost ~]# cp -a mydir youdir

          注:復制目錄mydir 到youdir ,如果yourdir目錄不存在,則創建。并且把mydir中所有的文件下級子目錄都復制到 yourdir目錄中。也就是說mydir目錄的文件和youdir是一樣的。-a 參數等同于-dpR,并且源目錄和目標目錄的屬性(用戶組、權限、最后訪問及修改時間)都一致;


          3.23 參數-b的示例應用;

          把源文件復制為目標文件;并且嘗試-b參數的運用;

          [root@localhost ~]# cp fonts.scale fonts.dir? 把一個文件復制為另一個文件;

          [root@localhost ~]# cp -bi fonts.scale fonts.dir

          cp:是否覆蓋“fonts.dir”? y? 注:因為用了-i 參數,如果目標文件存在,則報警提示;

          [root@localhost ~]# ls -lh fonts.*
          -rw-r--r-- 1 root root 2 04-20 10:24 fonts.dir
          -rw-r--r-- 1 root root 2 04-20 10:24 fonts.dir~? 注:-b參數運用的效果就是生成已存在目標文件的覆蓋之前備份。
          -rw-r--r-- 1 root root 2 03-27 02:00 fonts.scale


          3.24 把多個文件復制到目錄目錄中示例;

          比如我們把位于用戶當前目錄下的fonts.dir、Kernel.rpm和Plist文件,復制到當前用戶所處的目錄下的sun目錄中;

          [root@localhost ~]# pwd? 注:判斷用戶所處的位置,也就是所處的目錄;
          /root

          [root@localhost ~]# mv fonts.dir Kernel.rpm? Plist? sun/
          [root@localhost ~]# ls sun/
          fonts.dir? Kernel.rpm? Plist

          注:如果您想把多個目錄或文件復制到目標目錄時,您得加參數 -R


          3.25 復制目錄時-R參數的應用;

          復制一個目錄到另一個目錄時,我們要用到 -r或-R 或-a , 如果目標目錄不存在,則創建它,如果目標目錄存在,則復制源目錄到目標目錄之下;看看-a和-R或-r有什么不同?嘗試看看;

          比如我們在用戶當前操作的目錄中,有mydir目錄,我們想把mydir復制為medir(在復制之前medir是不存在的)。

          [root@localhost ~]# cp -R mydir medir 注:如果medir目錄不存在,則創建medir目錄,并且medir目錄中的內容和mydir中的一樣;

          如果您把-R參數換成-a參數,會有什么不同?看看前面的例子所說的;


          4、 目錄創建工具mkdir和刪除空目錄工具rmdir;


          4.1 mkdir 是目錄創建工具;


          4.11 mkdir語法格式及參數;

          語法格式

          #mkdir [參數選項]? 目錄

          參數常用的如下:

          -m 在創建目錄時要授其權限,要和chmod的授權格式;
          -p 如果中間目錄不存在,則創建它


          4.12 參數 -p 的應用示例

          我們要創建一個目錄linuxsir,并且linuxsir目錄下包含子目錄sirdoc,sirdoc目錄下還有 redhat目錄;

          [root@localhost ~]# mkdir -p? linuxsir/sirdoc/redhat

          舉例: -m 參數的應用示例;

          我們以不同的權限來創建目錄,然后查看我們所創建目錄的屬性;這要涉及到chown 來改變目錄的權限的格式。我們會在以后講到chown改變目錄或文件的權限。在這里不同的是,在目錄創建之時就給其授權了;

          [root@localhost ~]# mkdir -m? 644 sundir
          [root@localhost ~]# mkdir -m 755 moondir
          [root@localhost ~]# mkdir -m 000 beinandir
          [root@localhost ~]# ls -ld sundir moondir beinandir
          d--------- 2 root root 4096 04-20 11:01 beinandir
          drwxr-xr-x 2 root root 4096 04-20 11:01 moondir
          drw-r--r-- 2 root root 4096 04-20 11:00 sundir


          4.2 刪除空目錄工具 rmdir 和rm ;

          rmdir 是用來刪除空目錄用的,如果目錄中有文件或子目錄,必須先刪除文件或子目錄,其語法格式如下:

          #rmdir [參數]? 目錄


          rmdir 參數常用的有:

          -p 刪除目錄時是一級一級的時行的,值得注意的是,首先從最里面的目錄開始。下面是一個例子;

          [root@localhost ~]# mkdir -p? linuxsir/sirdoc/redhat/?

          注:首先在當前目錄下創建linuxsir目錄,他的子目錄是sirdoc,sirdoc內又有一個子目錄redhat

          [root@localhost ~]# rmdir -p linuxsir/sirdoc/redhat/? 注:刪除linuxsir目錄,要用到參數-p
          [root@localhost ~]# ls linuxsir? 注:檢查一下是不是還有這個目錄?
          ls: linuxsir: 沒有那個文件或目錄

          rmdir 所刪除的目錄,每級目錄中都是空的,沒有其它的文件。如果任何一級的目錄有文件,也不能刪除。這時您要用到rm -rf 命令強制刪除。不過用rm -rf 刪除時有點不安全,還是用rf -ri 比較好一點,因為在刪除的時候,會有警告提示。這對于安全操作來說是很重要的;

          [root@localhost ~]# ls -lh sun/? 注:這是sun目錄,里面有內容;
          總計 28K
          -rw------- 1 root root 1.4K 04-19 15:04 anaconda-ks.cfg
          -rw-r--r-- 1 root root??? 2 04-20 10:24 fonts.dir
          -rw-r--r-- 1 root root??? 2 03-27 02:00 fonts.scale
          -rw-r--r-- 1 root root 5.3K 03-16 08:52 install.log.syslog
          -rw-r--r-- 1 root root??? 0 04-19 20:44 Kernel.rpm
          -rw-r--r-- 1 root root??? 0 04-20 10:20 Plist
          [root@localhost ~]# rmdir sun/? 注:我們嘗試用rmdir來刪除,
          rmdir: sun/: 目錄非空??

          [root@localhost ~]# rm -rf sun/? 注:強制用rm -rf 來刪除;

          [root@localhost ~]# ls sun??? 注:檢查是否刪除,刪除成功;
          ls: sun: 沒有那個文件或目錄


          5、創建一個空文件的工具:用 touch、echo、cat等工具;

          有時我們為了方便,可能在控制臺或終端下創建一個不存在的空文件,然后我們再用編輯器來編輯它;創建空文件有時還有點用。說說也無妨。我們在這里用touch、ech0及cat 工具。其實這些工具,創建文件只是他們的一個小小的功能,我們以后再介紹這些工具,先說他們創建文件的功能。

          注意:創建這些文件,在我們操作創建文件之前,這些文件在用戶當前操作目錄下是不存在的,我們在這里只是創建一個新的文件名,并且它里面沒有任何空容的;

          [root@localhost ~]# ls 123456.txt 654321.txt 98765.txt
          ls: 123456.txt: 沒有那個文件或目錄
          ls: 654321.txt: 沒有那個文件或目錄
          ls: 98765.txt: 沒有那個文件或目錄

          [root@localhost ~]# echo > 123456.txt? 注:用ech0 來創建,在創建之前在此操作目錄下不存不123456.txt文件;
          [root@localhost ~]# ls 123456.txt???? 注:查看一下看有沒有生成?
          123456.txt

          [root@localhost ~]# touch 654321.txt? 注:用 touch 來創建,在創建之前在此操作目錄下不存在654321.txt文件;
          [root@localhost ~]# ls 654321.txt? 注:查看一下看有沒有生成?
          654321.txt

          [root@localhost ~]# cat > 98765.txt? 注:用ech0 來創建,在創建之前在此操作目錄下不存在98765.txt 文件;然后按ctrl+c組合鍵退出;

          [root@localhost ~]# ls 98765.txt?? 注:查看一下看有沒有生成?
          98765.txt


          6、刪除文件工具rm;

          rm 是用來刪除一個或多個文件的工具,并且能用于刪除非空目錄。我們前面提到了可以加參數-rf 就可以強制刪除一個非空目錄。

          rm的語法格式;

          #rm [參數選項] file1 file2 ... ...
          #rm? [參數選項]? dir1 dir2 dir3 ... ...

          rm 常用參數:

          -f? 不顯示警告或提示信息就刪除,用的時候需要小心;
          -i? 刪除文件時,顯示警告信息,要多用,這樣比較安全;根據提示,輸入y就表示刪除,輸入n,請示不刪除;
          -r或-R? 表示可以刪除整個目錄(包括子目錄及所有文件),要小心用;

          [root@localhost ~]# rm -i 123.sh? 注:這是刪除一個文件,用-i參數的示例,有警告提示;

          rm:是否刪除一般空文件“123.sh”? y

          比如我們想刪除mydir目錄及所有下級目錄和文件,要有提示的警告信息,可以用-r參數和-i參數的組合;如果您想終止rm命令,請按ctrl+c組合健退出rm;

          [root@localhost ~]# rm -ri mydir/

          rm:是否進入目錄“mydir/”? y
          rm:是否進入目錄“mydir//youdir”? y
          rm:是否刪除一般文件“mydir//youdir/enteruml.sh”?

          如果您想沒有任何警告信息的刪除mydir目錄下的所有文件及子目錄,可以用-r和-f參數的組合;

          [root@localhost ~]# rm -rf mydir


          7、修改文件名工具 mv

          mv 可以移動一個文件(或目錄)到另一個文件(或目錄),如果文件(或目錄)不存在,則創建它。其實mv 這個過程也可以理解為改名過程,所以說mv工具能修改文件名和目錄名。

          #mv 原文件名或目錄名? 新文件或目錄名

          注意:新文件名或目錄名應該不能與現有文件名(或目錄名)同名。

          舉例:

          [root@localhost ~]# ls
          crondw.sh? kernel? mkuml-2004.07.17-ananas.tar.bz2? mydir? openQreadme.txt? sun.txt? upgrade.log? youdir

          [root@localhost ~]# mv crondw.sh 123.sh? 注:移動crondw.sh 到123.sh ,其實就是把文件名改為了123.sh

          [root@localhost ~]# ls
          123.sh? kernel? mkuml-2004.07.17-ananas.tar.bz2? mydir? openQreadme.txt? sun.txt? upgrade.log? youdir

          再看一例mv 修改目錄的。當然mv是把文件(或目錄)從一個地方移到另一個地方。如果另一地方沒有和源文件(或目錄)同名的,就創建。這也相當于改名;

          [root@localhost ~]# ls
          123.sh? kernel? mkuml-2004.07.17-ananas.tar.bz2? mydir? openQreadme.txt? sun.txt? upgrade.log? youdir

          [root@localhost ~]# mv kernel/ kernelBak

          [root@localhost ~]# ls
          123.sh? kernelBak? mkuml-2004.07.17-ananas.tar.bz2? mydir? openQreadme.txt? sun.txt? upgrade.log? youdir
          posted on 2008-07-04 10:53 crazy 閱讀(225) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 巢湖市| 防城港市| 额尔古纳市| 五常市| 右玉县| 重庆市| 台山市| 葫芦岛市| 岑溪市| 汉沽区| 阿拉善左旗| 重庆市| 连山| 武安市| 普兰店市| 扬州市| 忻州市| 裕民县| 麟游县| 通城县| 华安县| 锡林浩特市| 怀来县| 裕民县| 西平县| 磴口县| 定陶县| 舒兰市| 涪陵区| 达尔| 博罗县| 深水埗区| 盐边县| 察雅县| 房产| 时尚| 报价| 永年县| 车致| 游戏| 定边县|