ls 顯示檔案名稱、屬性等。
cp 拷貝檔案或目錄。
rm 移除檔案或目錄。
mv 檔案移動或改名。
basename 移除前導目錄及字尾,顯示檔名。
dirname 移除檔名,顯示目錄。
[root @test /root ]# ls [-ailS] 參數說明: -a :全部的檔案都列出(連同隱藏檔) -i :印出 inode 的值 -l :長的列出,連同檔案大小的資料等等 -S :以檔案大小排序 --color=never :不要顯示顏色 --color=always :均顯示顏色 --color=auto :由系統自行判斷 #範例: [root@dywHome2 ~]# ls col.txt drakx/ echoname* findnewer sed tmp/ [root@dywHome2 ~]# ls -a ./ findnewer .kde.bak/ .tcshrc ../ .gconf/ .lesshst .test.txt.swp .bash_completion .gconfd/ .local/ tmp/ .bash_history .gstreamer-0.8/ .mc/ .viminfo .bash_logout .gtk-bookmarks .mcop/ .vimrc .bash_profile .gtk_qt_engine_rc .mcoprc .xauth/ .bashrc .gtkrc* .mplayer/ .Xdefaults col.txt .gtkrc-2.0* .qt/ .xdg_menu_cache/ .cshrc .gtkrc-2.0.bak* .rpmdrake drakx/ .ICEauthority sed echoname* .kde/ .ssh/ [root@dywHome2 ~]# ls -l total 6 -rw-r--r-- 1 root root 2939 Feb 2 2008 col.txt drwx------ 2 root root 1024 Dec 27 2007 drakx/ -rwxr-xr-x 1 root root 11 Jan 28 2008 echoname* -rw-r--r-- 1 root root 0 Aug 30 08:44 findnewer -rw-r--r-- 1 root root 0 Apr 16 09:35 sed drwx------ 5 root root 1024 Sep 3 19:59 tmp/ [root@dywHome2 ~]# ls -al total 90 drwx------ 17 root root 2048 Sep 3 20:33 ./ drwxr-xr-x 21 root adm 1024 Sep 3 19:59 ../ -rw-r--r-- 1 root root 145 Aug 4 2006 .bash_completion -rw------- 1 root root 23796 Sep 3 17:47 .bash_history -rw-r--r-- 1 root root 24 Aug 4 2006 .bash_logout -rw-r--r-- 1 root root 106 Aug 4 2006 .bash_profile -rw-r--r-- 1 root root 226 Aug 4 2006 .bashrc -rw-r--r-- 1 root root 2939 Feb 2 2008 col.txt -rw-r--r-- 1 root root 233 Aug 4 2006 .cshrc drwx------ 2 root root 1024 Dec 27 2007 drakx/ ### 中間省略 ### -rw-r--r-- 1 root root 1479 Aug 4 2006 .Xdefaults drwxr-xr-x 2 root root 1024 Apr 20 10:45 .xdg_menu_cache/ [root@dywHome2 ~]# ls -al | more
[root@dywHome2 ~]# cp [-dLprRsufa] [來源檔] [目的檔] 參數說明: -d :連結檔維持其路徑之連結 -L :解除連結,直接 copy 連結的檔案(預設) -p :維持檔案之屬性 -r, -R :連同目錄下之所有檔案及次目錄都 copy -s :做成連結檔,而不 copy,與 ln 指令相同功能 -u, --update:來源檔較新才會進行 copy 的動作,常用於備份的動作 -f :強制 copy,不再尋問是否覆蓋 -a :與 -dpR 相同 #範例: [root@dywHome2 ~]# mkdir test [root@dywHome2 ~]# cd test [root@dywHome2 test]# touch foo [root@dywHome2 test]# cp foo foo1 [root@dywHome2 test]# ln -s foo lnfoo [root@dywHome2 test]# ll total 0 -rw-r--r-- 1 root root 0 Sep 3 20:50 foo -rw-r--r-- 1 root root 0 Sep 3 20:50 foo1 lrwxrwxrwx 1 root root 3 Sep 3 20:52 lnfoo -> foo [root@dywHome2 test]# cp lnfoo foo2 [root@dywHome2 test]# cp -d lnfoo foo3 [root@dywHome2 test]# ll total 0 -rw-r--r-- 1 root root 0 Sep 3 21:03 foo -rw-r--r-- 1 root root 0 Sep 3 20:50 foo1 -rw-r--r-- 1 root root 0 Sep 3 20:52 foo2 lrwxrwxrwx 1 root root 3 Sep 3 21:11 foo3 -> foo lrwxrwxrwx 1 root root 3 Sep 3 20:52 lnfoo -> foo [root@dywHome2 test]# chown dywang:users foo2 [root@dywHome2 test]# ll total 0 -rw-r--r-- 1 root root 0 Sep 3 21:03 foo -rw-r--r-- 1 root root 0 Sep 3 20:50 foo1 -rw-r--r-- 1 dywang users 0 Sep 3 20:52 foo2 lrwxrwxrwx 1 root root 3 Sep 3 21:11 foo3 -> foo lrwxrwxrwx 1 root root 3 Sep 3 20:52 lnfoo -> foo [root@dywHome2 test]# cp foo2 foo4 [root@dywHome2 test]# cp -p foo2 foo5 [root@dywHome2 test]# ll total 0 -rw-r--r-- 1 root root 0 Sep 3 21:03 foo -rw-r--r-- 1 root root 0 Sep 3 20:50 foo1 -rw-r--r-- 1 dywang users 0 Sep 3 20:52 foo2 lrwxrwxrwx 1 root root 3 Sep 3 21:11 foo3 -> foo -rw-r--r-- 1 root root 0 Sep 3 21:12 foo4 -rw-r--r-- 1 dywang users 0 Sep 3 20:52 foo5 lrwxrwxrwx 1 root root 3 Sep 3 20:52 lnfoo -> foo [root@dywHome2 test]# cd .. [root@dywHome2 ~]# cp -a test test1 [root@dywHome2 ~]# ll test test1 test: total 0 -rw-r--r-- 1 root root 0 Sep 3 21:03 foo -rw-r--r-- 1 root root 0 Sep 3 20:50 foo1 -rw-r--r-- 1 dywang users 0 Sep 3 20:52 foo2 lrwxrwxrwx 1 root root 3 Sep 3 21:11 foo3 -> foo -rw-r--r-- 1 root root 0 Sep 3 21:12 foo4 -rw-r--r-- 1 dywang users 0 Sep 3 20:52 foo5 lrwxrwxrwx 1 root root 3 Sep 3 20:52 lnfoo -> foo test1: total 0 -rw-r--r-- 1 root root 0 Sep 3 21:03 foo -rw-r--r-- 1 root root 0 Sep 3 20:50 foo1 -rw-r--r-- 1 dywang users 0 Sep 3 20:52 foo2 lrwxrwxrwx 1 root root 3 Sep 3 21:13 foo3 -> foo -rw-r--r-- 1 root root 0 Sep 3 21:12 foo4 -rw-r--r-- 1 dywang users 0 Sep 3 20:52 foo5 lrwxrwxrwx 1 root root 3 Sep 3 21:13 lnfoo -> foo
[root@dywHome2 ~]# rm [-fir] [檔名] 參數說明: -i :提供使用者確認(預設值) -r,-R :循環,含次目錄 -f :忽略不存在的檔,強制移除不提示。 #範例: [root@dywHome2 ~]# rm test/foo1 rm: remove regular empty file `test/foo1'? y [root@dywHome2 ~]# rm -rf test
[root@dywHome2 ~]# mv [-u] [來源檔] [目的檔] 參數說明: -u,--updates :來源檔比目的檔新時才動作 #範例: [root@dywHome2 ~]# mkdir test [root@dywHome2 ~]# cd test [root@dywHome2 test]# touch foo [root@dywHome2 test]# ll total 0 -rw-r--r-- 1 root root 0 Sep 3 21:25 foo [root@dywHome2 test]# mv foo foo1 [root@dywHome2 test]# ll total 0 -rw-r--r-- 1 root root 0 Sep 3 21:25 foo1 [root@dywHome2 test]# cp foo1 foo2 [root@dywHome2 test]# ll total 0 -rw-r--r-- 1 root root 0 Sep 3 21:25 foo1 -rw-r--r-- 1 root root 0 Sep 3 21:26 foo2 [root@dywHome2 test]# mv foo1 foo2 mv: overwrite `foo2'? n [root@dywHome2 test]# mv -u foo1 foo2 [root@dywHome2 test]# mv foo1 foo2 /tmp [root@dywHome2 test]# ll /tmp/foo[12] -rw-r--r-- 1 root root 0 Sep 3 21:25 /tmp/foo1 -rw-r--r-- 1 root root 0 Sep 3 21:26 /tmp/foo2
[root@dywHome2 test]# basename NAME [字尾] 參數說明: #範例: [root@dywHome2 test]# basename /root/test/foo.sh foo.sh [root@dywHome2 test]# basename /root/test/foo.sha foo.sha [root@dywHome2 test]# basename /root/test/foo.sh .sh foo [root@dywHome2 test]# basename /root/test/foo.sh o.sh fo
[root @test /root ]# dirname NAME 參數說明: #範例: [root@dywHome2 test]# dirname /root/test/foo.sh /root/test [root@dywHome2 test]# dirname /root/test/ /root [root@dywHome2 test]# dirname foo.sh . %*<== foo.sh 沒有前導目錄,故輸出為 . 表示目前目錄。*)
練習題