一、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。
常用工具cp mv rm cat tac head tail more less stat
cp
cp SRC…DEST
A. 如果SRC是文件:
a. 如果目標不存在:新建DEST,并將SRC中的內容填充至DEST中。
b. 如果目標存在:
(1). 如果DEST是文件,將SRC中的文件內容覆蓋至DEST中,可以使用 – i 來提醒用戶是否覆蓋。
(2). 如果DEST是目錄,在DEST下新建與源文件同名的文件,并將DEST中的內容填充至新文件中。
B. 如果SRC是目錄:則必須使用-r選項
a.如果DEST存在,則其必須是目錄,否則報錯。先在DEST目錄下創建與SRC同名的目錄,并將SRC中的所有內容復制到DEST中
b.如果DEST不存在,則先創建DEST目錄,并將SRC中的所有內容復制到DEST目錄中
cp常用選項
-i 交互式
-r 遞歸復制
-a 歸檔,相當于-dR –preseve=all
-d 表示不跟蹤符號鏈接所指向的源文件
-p 保持原有文件的屬性信息
-f 強制覆蓋
-v 顯示過程
mv
三種使用格式:
1. 如果SRC是單個文件,DEST不存在,相當于剪貼功能
2. 如果SRC是多個文件,DEST不存在,剪貼
3. 如果SRC是個目錄,DEST不存在,先創建同名目錄再復制
選項:-i 交互式 -f 強制
rm
選項:-i 交互式 -f 強制 -r 遞歸 所有不用的文件建議不要直接刪除,而是移動至某個專用目錄;(模擬回收站)
二、bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內容及其示例演示。
1. 命令行的執行結果狀態:0成功,0-255失敗
2. 程序的返回值:程序的功能定義
3. 程序的執行狀態結果:程序執行完成后的狀態
4. bash使用特需變量$?保存最近一條命令的執行狀態結果
5. 命令行展開:
~:自動展開為用戶的家目錄,或指定的用戶的家目錄;
{}:可承載一個以逗號分隔的路徑列表,并能夠將其展開為多個路徑
三、請使用命令行展開功能來完成以下練習:
(1)、創建/tmp目錄下的:a_c, a_d, b_c, b_d
mkdir -v {a,b}_{c,d}
(2)、創建/tmp/mylinux目錄下的:
mkdir -pv {bin,boot/grub,dev,etc/rc.d/init.d,etc/sysconfig/network-scripts,lib/modules,lib64,
proc,sbin,sys,tmp,usr/local/{bin,etc,lib,sbin},var/{cache,log,run}}
四、文件的元數據信息有哪些,分別表示什么含義,如何查看?如何修改文件的時間戳信息。
文件的元數據信息就是stat跟上文件名查看到的信息,里面有文件大小,權限,時間戳,inode,硬連接數,
塊大小等信息;比如時間戳中的mtime更改是指數據改變,ctime改動指元數據改變,數據改變了元數據一
定會改變;touch可以修改時間戳信息,但不能手動指定ctime,
touch命令:
touch – change file timestamps
touch [OPTION]… FILE…
-c: 指定的文件路徑不存在時不予創建;
-a: 僅修改access time;
-m:僅修改modify time;
-t STAMP [[CC]YY]MMDDhhmm[.ss]
五、如何定義一個命令的別名,如何在命令中引用另一個命令的執行結果?
定義別名:alias new_name='old_name optios'
例如:alias cdnet='cd /etc/sysconfig/network-scripts/'
通過命令行定義的命令只對當前shell有效,如果想永久有效,需要配置文件中,僅對當前用戶有效:~/.bashrc
對所有用戶有效:/etc/bashrc
在命令中引用別名:使用$(COMMAND)或者` `命令引用
六、顯示var目錄下所有以l開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其它字符)的文件或目錄。
ls -d /var/l*[0-9]*[[:lower:]]
七、顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄。
ls -d /etc/[0-9]*[^0-9]
八、顯示/etc目錄下,以非字母開頭,后面跟了一個字母以及其它任意長度任意字符的文件或目錄。
ls -d /etc/[^[:alpha:]][[:alpha:]]*
九、在/tmp目錄下創建以tfile開頭,后跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22。
mkdir -v tfile-`date +%F-%H-%M-%S` y
十、復制/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中。
cp -a /etc/p*[^[:digit:]] /tmp/tytest2
十一、復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。
cp -a /etc/*.d /tmp/mytest2
十二、復制/etc/目錄下所有以l或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中。
cp -a /etc/[lmn]*.conf /tmp/mytest3
原創文章,作者:N24_小呆,如若轉載,請注明出處:http://www.www58058.com/57825
寫的還是蠻詳細的,能配合markdown優化下會更好~~加油~