-
linux上的文件管理命令:
1. cp命令:
作用:復制文件或目錄
單文件復制:
cp [OPTION]… SOURCE DEST
多源復制:
cp [OPTION]… SOURCE… DIRECTORY
常用選項:
-i:交互式復制,覆蓋前提醒用戶是否確認覆蓋
-f:強制復制
-r,-R:遞歸復制
-d:如果復制的是一個軟連接,則保持軟連接本身屬性
-a == –preserve=all:復制后保留相關的元數據
-l:如果復制的文件是鏈接文件,則保留連接屬性
–presery=[]:復制并保留某個屬性
mode:權限
ownership:屬主和屬組
context:安全標簽
timestamps:時間戳
xattr:擴展屬性
links:軟連接熟悉
all:所以屬性
2. mv命令:
作用:剪切
mv [OPTION]… SOURCE… DIRECTORY
常用選項:
-i:交互模式,提醒用戶是否確定剪切
-f:強制
3. rm命令:
作用:刪除文件
rm [OPTION]… FILE…
常用選項:
-i:交互式模式,提示用戶確認是否刪除
-f:強制
-r:刪除目錄
-v:顯示過程
4. alias命令:
作用:別名設置以及查看
alias 獲取別名
alias NAME='COMMAND' 定義別名
unalias NAME 撤銷別名
// 如果別名和其他命令名本身相同,則執行別名命令本身,而不執行源命令本身;要想執行原命令本身,使用"\"
2. bash的工作特性:
1. 狀態返回值
在linux中,每執行一次命令,不管命令是否正確執行,都會有一個以數字表示的狀態值;
狀態值:
0:正確
非零值:錯誤
2. 命令行展開:
在linux中命令展開是非常常用的,以{}來表示;
例:
mkdir /tmp/a{s,c} == mkdir /tmp/ac , mkdir /tmp/as
3. 命令行展開練習:
1. 創建/tmp/a_c,a_d,b_c,b_d
mkdir /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}}
4. 文件的元數據:
1. 文件可以看成有兩個部分組成:元數據、數據:
數據:就是文件保存的內容,即用cat、more等命令查看到的內容
元數據:可理解為文件的屬性,如:文件的權限、所有者、創建時間、修改時間、文件大小等等
2. 文件的元數據查看:
命令:stat
作用:顯示文件或文件系統的狀態(查看文件的元數據(文件屬性))
格式:stat FILE…
stat界面介紹:
第一行:顯示文件名以及文件類型
第二行:文件大小、Block塊大小、
第三行:設備號、I節點、連接次數
第四行:文件權限、文件的所有者以及所屬組
Access:最近一次訪問時間,即最近一次查看文件內容的時間
Modify:最近一次更改文件數據時間
Change:最近一次修改文件元數據時間
3. 修改文件時間戳信息,即修改文件Access、Modify信息;可通過touch命令來實現:
時間戳:從1970年1月1號0點0分0秒開始,以秒開始計時
命令:touch
作用:改變文件的access time和modify time屬性
格式:touch [OPTION]… FILE…
選項:
-c:如果指定的文件不存在,則不創建;默認文件不存在時,則創建次文件
-a:僅修改access time屬性
-m:僅修改modify time屬性
-t +[[cc]yy]MMDDhhmm[.ss] :更改為指定時間
5. 引用命令結果:
格式:$(COMMAND)或`COMMAND`
6. 練習
1. 顯示/var下所有以l開頭,以一個小寫字母結尾,且中間至少出現一位數字的目錄或文件
ls /var/l*[0-9]*[[:lower:]]
2. 顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄
ls /etc/[0-9]*[^0-9]
3. 顯示/etc目錄下,以非字母開頭,后面跟了一個字母以及其他任意長度任意字符的文件或目錄
ls /etc/[^[:alpha:]][[:alpha:]]*
4. 在/tmp目錄下創建以tfile開頭,后跟當前日期的文件或目錄
mkdir tfile-$(date +%Y-%m-%d-%H-%M)
5. 復制/etc目錄下所有以P開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中
cp -r /etc/p*[^0-9] /tmp/mytest1/
6. 復制/etc目錄下所有以.d結尾的文件或目錄到/tmp/mytest2目錄中
cp -r /etc/*.d /tmp/mytest2
7. 復制/etc目錄下所有以l或m或n開頭,以.conf結尾的文件或目錄到/tmp/mytest3目錄中
cp -r /etc/[1mn]*.conf /tmp/mytest3
原創文章,作者:qc940324,如若轉載,請注明出處:http://www.www58058.com/68490
品質保持的不錯哦,繼續加油。