1、Linux上的文件管理類命令都有哪些其常用的使用方法及其相關示例演示。
cp(copy) 復制,mv(move)移動或者更名,mkdir(創建目錄,-p可以同時創建父目錄),rm(刪除目錄,-r 可以遞歸操作,rmdir(刪除空目錄)刪除文件或者目錄,建議建立一個臨時回收站,否則誤刪或者短時間內還需要的文件),touch,file,stat, 文件名的通配符“,?,[],[^]” * 操作文件數據流的命令:more,less,cat,tac,tr
~]#cp sourcefile destination ~]#mv sourcefile changenamefile ~]#mkdir /tmp/1/2/5 ;同時創建多級目錄 ~]#rm -r /tmp/1/ ; 可以刪除嵌套的多級目錄
2、bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內容及其示例演示。
命令執行狀態的返回值和命令執行返回本身是不一樣的,前者可以通過echo $?獲取上一條命令執行狀態的返回值,如果為0,這成功執行,非0,執行失敗(1-255);后者是,命令執行的結果值。
~]# ll $(which abc);abc是沒有的命令,結果$? 為0 ~]# labc $(which bash); labc 是沒有的命令,結果$? 127 執行失敗
3、請使用命令行展開功能來完成以下練習:
(1)、創建/tmp目錄下的:a_c, a_d, b_c, b_d
~]# rmdir /tmp/{a,b}_{c,d}
(2)、創建/tmp/mylinux目錄下的:
~]#mkdir -p /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,lib64,proc,sbin,sys,tmp,usr/{local/{bin,sbin},var/{lock,log,run}}}
mylinux/
├── bin ├── boot │ └── grub ├── dev ├── etc │ ├── rc.d │ │ └── init.d │ └── sysconfig │ └── network-scripts ├── lib │ └── modules ├── lib64 ├── proc ├── sbin ├── sys ├── tmp ├── usr │ └── local │ ├── bin │ └── sbin └── var ├── lock ├── log └── run
4、文件的元數據信息有哪些,分別表示什么含義,如何查看?如何修改文件的時間戳信息。
~]# stat clock_my.c ; 一個測試文件 File: `clock_my.c' (文件名)` Size: 1919(文件數據大小(1919字節)) Blocks: 8(有 IO Block: 4096 regular fileDevice: 80bh/2059d Inode: 544225 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) 權限 Access: 2016-09-20 18:07:15.556559765 +0800 ;最近一次訪問時間 Modify: 2016-09-16 22:48:52.446615299 +0800;最近一次數據時間 Change: 2016-09-16 22:48:52.490616967 +0800;最近一次修改元數據時間
touch命令可以修改文件時間戳,
touch命令:改變文件的時間戳(timestamps) -c:指定路徑不存在文件時,不創建 -a: 僅修改access時間 -m:僅修改modify time -t:指定改變的時間[[CC][YY]MMDDhhmm[.ss]
5、如何定義一個命令的別名,如何在命令中引用另一個命令的執行結果?
盡在當前shell有效的話:
~]# alias mytime='date +%H:%M:%S' ``或者$()都可以,但建議用后者更安全,eg:~]# ll $(which ifconfig)
6、顯示/var目錄下所有以l開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其它字符)的文件或目錄。
~]# ll -d /var/l*[0-9]*[a-z] 或者 ~]# ll /var/l*[[:digit:]]*[[:lower:]]
7、顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄。
~]# ll -d /etc/[0-9]*[^0-9]
8、顯示/etc目錄下,以非字母開頭,后面跟了一個字母以及其它任意長度任意字符的文件或目錄。
~]# ll -d /etc/[^[:alpha:]][[:alpha:]]*
9、在/tmp目錄下創建以tfile開頭,后跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22。
~]# touch /tmp/tfile-$(date +%Y-%m-%d-%H-%M-%S)
10、復制/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中。
~]# cp -rf /etc/p*[^0-9] /tmp/mytest1
11、復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。
~]# cp -rf /etc/*.d /tmp/mytest2
12、復制/etc/目錄下所有以l或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中。
~]# cp -rf /etc/[lmn]*.conf /tmp/mytest3
原創文章,作者:不忘初衷,如若轉載,請注明出處:http://www.www58058.com/64678