<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    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 閱讀(219) 評論(0)  編輯  收藏

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


    網站導航:
     
    主站蜘蛛池模板: 国产精品公开免费视频| 99精品视频在线观看免费专区| 亚洲高清视频免费| 亚洲综合婷婷久久| 91禁漫免费进入| 亚洲免费福利视频| 久久久久久99av无码免费网站| 亚洲婷婷综合色高清在线| 亚洲黄色免费电影| 亚洲校园春色另类激情| 歪歪漫画在线观看官网免费阅读 | 国产自国产自愉自愉免费24区| 亚洲国产天堂久久久久久| 亚洲高清免费视频| 久久99国产亚洲高清观看首页| 免费看一区二区三区四区| 亚洲人成电影在线天堂| 免费精品国偷自产在线在线 | 一本色道久久88亚洲精品综合| 成年轻人网站色免费看| 日韩欧美亚洲中文乱码| 亚洲爽爽一区二区三区| 韩日电影在线播放免费版| 亚洲激情视频在线观看| 国产精品成人免费一区二区 | 日韩成人免费在线| caoporn国产精品免费| 五月天网站亚洲小说| 欧美三级在线电影免费| 精品在线视频免费| 亚洲AV无码专区电影在线观看| 中文字幕在线免费观看| 亚洲性无码AV中文字幕| 亚洲性日韩精品国产一区二区| 国精产品一区一区三区免费视频| 亚洲国产成人在线视频| 亚洲一区二区高清| 日日麻批免费40分钟日本的| 国产大陆亚洲精品国产| 无码久久精品国产亚洲Av影片| 女人毛片a级大学毛片免费|