mkdir [選項] 目錄名
mkdir 命令的選項及說明node
-m 對新建目錄設置存取權限 -p 能夠指定一個路徑名稱(一次建立多個目錄)
[root@cinder01 ~]# mkdir -p /home/user1/user2 [root@cinder01 ~]# cd /home/user1/user2/ [root@cinder01 user2]# pwd /home/user1/user2
more [選項] 文件名
more命令的選項及其說明linux
-d 在屏幕底部more提示符顯示友好提示 -s 將輸出文件中的多個空行減小爲只有一個空行輸出,以第一行爲準 -p 先清除顯示屏之前的信息,再顯示文本信息 -c 顯示文件時,每屏都清除屏幕先前的信息,而後從最頂端顯示出來
[root@cinder01 ~]# more yum.log
顯示yum.log文件內容,每10行顯示一屏,同時清屏正則表達式
[root@cinder01 ~]# more -c -10 yum.log
cat [選項] 文件名 或 cat 文件1 文件2 > 文件3
cat選項及其說明shell
-A 將文件中的製表符顯示爲「^I」,同時在每行的末尾顯示一下「$」符號 -b 將文件中的全部非空行按順序編號,編號從1開始 -n 顯示文件行號(包括空行)
[root@cinder01 ~]# cat -Ab /etc/selinux/config $ 1 # This file controls the state of SELinux on the system.$ 2 # SELINUX= can take one of these three values:$ 3 # enforcing - SELinux security policy is enforced.$ 4 # permissive - SELinux prints warnings instead of enforcing.$ 5 # disabled - No SELinux policy is loaded.$ 6 SELINUX=disabled$ 7 # SELINUXTYPE= can take one of three two values:$ 8 # targeted - Targeted processes are protected,$ 9 # minimum - Modification of targeted policy. Only selected processes are protected. $ 10 # mls - Multi Level Security protection.$ 11 SELINUXTYPE=targeted $ $ $ [root@cinder01 ~]#
將兩個文檔合併輸出到第三個文件中windows
[root@cinder01 ~]# echo "This is file1.txt" > file1.txt [root@cinder01 ~]# [root@cinder01 ~]# echo "This is file2.txt" > file2.txt [root@cinder01 ~]# [root@cinder01 ~]# cat file1.txt file2.txt > file3.txt [root@cinder01 ~]# [root@cinder01 ~]# more file3.txt This is file1.txt This is file2.txt [root@cinder01 ~]#
diff [選項]文件1 文件2
diff 選項及其說明bash
-c 顯示所有內容,並標出不一樣之處 -b 忽略尾行的空格,同時字符串中的一個或多個空格都視爲相同 -r 當文件1和文件2爲目錄時,會比較子目錄的文件 -s 當兩個文件相同時,顯示文件的相同信息
[root@cinder01 ~]# diff file1.txt file2.txt 1c1 < This is file1.txt --- > This is file2.txt [root@cinder01 ~]# diff file1.txt file3.txt 1a2 > This is file2.txt [root@cinder01 ~]# [root@cinder01 ~]# diff -c file1.txt file3.txt *** file1.txt 2017-08-26 23:06:21.583437621 +0800 --- file3.txt 2017-08-26 23:07:01.678173298 +0800 *************** *** 1 **** --- 1,2 ---- This is file1.txt + This is file2.txt [root@cinder01 ~]#
grep [選項] 須要查找的字符串文件名
grep 命令的選項的經常使用選項說明工具
-A NUM 除了列出符合條件的行外,同時列出每一個符合條件的後NUM行 -c 只顯示符合條件的行數,而不顯示每行的具體信息 -f file 事先將要搜索的樣式寫入一個文件中,每行一個樣式,而後以這個文件做爲條件進行搜索 -i 搜索時忽略大小寫 -n 在搜索結果中顯示行號 -B 與選項「-A」相反,除了列出符合條件的行外,同時列出每一個符合條件行的錢NUM行
[root@cinder01 ~]# grep disabled config # disabled - No SELinux policy is loaded. SELINUX=disabled [root@cinder01 ~]#
列出config文件中含有disabled字符串的行,並標識每行的具體行號ui
[root@cinder01 ~]# grep -n disabled config 6:# disabled - No SELinux policy is loaded. 7:SELINUX=disabled [root@cinder01 ~]#
rm [選項] 文件或者目錄
rm 命令的選項及說明code
-r 告訴rm將選項中列出的所有目錄以及子目錄文件均遞歸刪除,若是不指定"-r"選項,「rm」命令不能刪除非空目錄 -f 忽略不存在問題,也不給出提示 -i 交互式刪除,即在刪除前確認
[root@cinder01 ~]# rm -rf file3.txt
[注:]使用命令結合「rm -rf」時需當心,由於文件一旦刪除,就不能不想恢復,建議使用「-i」選項,在刪除時,再確認是否要刪除文件排序
touch [選項] 設定的時間文件
touch命令的選項及其說明
-a 改變文件的訪問時間爲系統當前時間,無須設置時間選項 -m 改變文件的修改時間爲系統當前時間,無須設置時間格式 -c 若是文件不存在,不建立也不提高 -d 或 -t 使用指定的日期或時間 -r<參考文件或目錄> 把指定文件或目錄的日期,時間都設定成和參考文件或目錄的日期,時間相同
[root@cinder01 ~]# touch test.txt # 建立一個文件test.txt [root@cinder01 ~]# ls -l test.txt # 顯示文件建立時間 -rw-r--r-- 1 root root 0 Aug 27 00:49 test.txt [root@cinder01 ~]# date # 系統當前時間 Sun Aug 27 00:50:06 CST 2017 [root@cinder01 ~]# ls -lu test.txt -rw-r--r-- 1 root root 0 Aug 27 00:49 test.txt [root@cinder01 ~]# touch -a test.txt # 改變文件訪問時間爲系統當前時間 [root@cinder01 ~]# [root@cinder01 ~]# ls -lu test.txt -rw-r--r-- 1 root root 0 Aug 27 00:50 test.txt [root@cinder01 ~]# [root@cinder01 ~]# touch -m test.txt # 改變文件的修改時間爲系統當前時間 [root@cinder01 ~]# [root@cinder01 ~]# ls -l test.txt -rw-r--r-- 1 root root 0 Aug 27 00:50 test.txt [root@cinder01 ~]# [root@cinder01 ~]#
ln [選項] 源文件 目標連接名
ln命令選項及其說明
-f 若是在目標位置存在與連接名相同的文件,這個文件將被刪除 -s 進行軟連接 -d 容許系統管理員硬連接本身的目錄 -b 對將在連接時會被覆蓋或者刪除的文件進行備份
[root@cinder01 ~]# ln /etc/inittab /opt/backup/inittab
將/etc/inittab文件進行軟連接到/opt目錄下
[root@cinder01 ~]# ln -s /etc/inittab /opt/ [root@cinder01 ~]# ls -l /opt/ total 4 lrwxrwxrwx 1 root root 12 Aug 27 01:08 inittab -> /etc/inittab [root@cinder01 ~]#
file [選項] 文件名
file命令的選項及說明
-b 顯示文件類型結果,不顯示對應文件名稱 -L 直接顯示符號連接所指向文件的類型 -z 顯示壓縮文件的信息 -i 若是文件不是常規文件,則不進一步對文件類型進行分類
[root@cinder01 ~]# file /etc/init.d/network /etc/init.d/network: Bourne-Again shell script, ASCII text executable [root@cinder01 ~]#
顯示/bin/sh文件的類型,顯示結果爲符號連接文件
[root@cinder01 ~]# file /bin/sh /bin/sh: symbolic link to `bash' [root@cinder01 ~]#
顯示file1.txt文件類型。顯示結果爲ASCII文件文本
[root@cinder01 ~]# file file1.txt file1.txt: ASCII text [root@cinder01 ~]#
顯示/dev/sda1文件類型,顯示結果爲塊設備文件
[root@cinder01 ~]# file /dev/sda1 /dev/sda1: block special [root@cinder01 ~]#
cp [選項] 源文件母子目錄 目標文件或者目錄
cp命令的選項及其說明
-a 在複製目錄時使用,它保留全部信息,包含文件連接,文件屬性,並遞歸地複製目錄 -r 若給出的原文件是一個目錄文件,此時cp將遞歸複製該目錄下全部的子目錄和文件 -d 複製時保留連接,這樣不會失去連接文件 -p 保留文件的修改時間和存取權限 -i 若是已經有相同文件名的目標文件,則提示用戶是否覆蓋
[root@cinder01 ~]# cp -r ./* /tmp
將/home目錄下的目錄及子目錄所有複製到/tmp目錄下
[root@cinder01 ~]# cp -r /home/ /tmp/
find path-name[-options] [-print -exec -ok命令 {} \;]
選項說明:
-amin<分鐘>:查找在指定時間曾被存取過的文件或目錄,單位以分鐘計算; -anewer<參考文件或目錄>:查找其存取時間較指定文件或目錄的存取時間更接近如今的文件或目錄; -atime<24小時數>:查找在指定時間曾被存取過的文件或目錄,單位以24小時計算; -cmin<分鐘>:查找在指定時間之時被更改過的文件或目錄; -cnewer<參考文件或目錄>查找其更改時間較指定文件或目錄的更改時間更接近如今的文件或目錄; -ctime<24小時數>:查找在指定時間之時被更改的文件或目錄,單位以24小時計算; -daystart:從本日開始計算時間; -depth:從指定目錄下最深層的子目錄開始查找; -expty:尋找文件大小爲0 Byte的文件,或目錄下沒有任何子目錄或文件的空目錄; -exec<執行指令>:假設find指令的回傳值爲True,就執行該指令; -false:將find指令的回傳值皆設爲False; -fls<列表文件>:此參數的效果和指定「-ls」參數相似,但會把結果保存爲指定的列表文件; -follow:排除符號鏈接; -fprint<列表文件>:此參數的效果和指定「-print」參數相似,但會把結果保存成指定的列表文件; -fprint0<列表文件>:此參數的效果和指定「-print0」參數相似,但會把結果保存成指定的列表文件; -fprintf<列表文件><輸出格式>:此參數的效果和指定「-printf」參數相似,但會把結果保存成指定的列表文件; -fstype<文件系統類型>:只尋找該文件系統類型下的文件或目錄; -gid<羣組識別碼>:查找符合指定之羣組識別碼的文件或目錄; -group<羣組名稱>:查找符合指定之羣組名稱的文件或目錄; -help或——help:在線幫助; -ilname<範本樣式>:此參數的效果和指定「-lname」參數相似,但忽略字符大小寫的差異; -iname<範本樣式>:此參數的效果和指定「-name」參數相似,但忽略字符大小寫的差異; -inum:查找符合指定的inode編號的文件或目錄; -ipath<範本樣式>:此參數的效果和指定「-path」參數相似,但忽略字符大小寫的差異; -iregex<範本樣式>:此參數的效果和指定「-regexe」參數相似,但忽略字符大小寫的差異; -links<鏈接數目>:查找符合指定的硬鏈接數目的文件或目錄; -iname<範本樣式>:指定字符串做爲尋找符號鏈接的範本樣式; -ls:假設find指令的回傳值爲Ture,就將文件或目錄名稱列出到標準輸出; -maxdepth<目錄層級>:設置最大目錄層級; -mindepth<目錄層級>:設置最小目錄層級; -mmin<分鐘>:查找在指定時間曾被更改過的文件或目錄,單位以分鐘計算; -mount:此參數的效果和指定「-xdev」相同; -mtime<24小時數>:查找在指定時間曾被更改過的文件或目錄,單位以24小時計算; -name<範本樣式>:指定字符串做爲尋找文件或目錄的範本樣式; -newer<參考文件或目錄>:查找其更改時間較指定文件或目錄的更改時間更接近如今的文件或目錄; -nogroup:找出不屬於本地主機羣組識別碼的文件或目錄; -noleaf:不去考慮目錄至少需擁有兩個硬鏈接存在; -nouser:找出不屬於本地主機用戶識別碼的文件或目錄; -ok<執行指令>:此參數的效果和指定「-exec」相似,但在執行指令以前會先詢問用戶,若回答「y」或「Y」,則放棄執行命令; -path<範本樣式>:指定字符串做爲尋找目錄的範本樣式; -perm<權限數值>:查找符合指定的權限數值的文件或目錄; -print:假設find指令的回傳值爲Ture,就將文件或目錄名稱列出到標準輸出。格式爲每列一個名稱,每一個名稱前皆有「./」字符串; -print0:假設find指令的回傳值爲Ture,就將文件或目錄名稱列出到標準輸出。格式爲所有的名稱皆在同一行; -printf<輸出格式>:假設find指令的回傳值爲Ture,就將文件或目錄名稱列出到標準輸出。格式能夠自行指定; -prune:不尋找字符串做爲尋找文件或目錄的範本樣式; -regex<範本樣式>:指定字符串做爲尋找文件或目錄的範本樣式; -size<文件大小>:查找符合指定的文件大小的文件; -true:將find指令的回傳值皆設爲True; -type<文件類型>:只尋找符合指定的文件類型的文件; -uid<用戶識別碼>:查找符合指定的用戶識別碼的文件或目錄; -used<日數>:查找文件或目錄被更改以後在指定時間曾被存取過的文件或目錄,單位以日計算; -user<擁有者名稱>:查找符和指定的擁有者名稱的文件或目錄; -version或——version:顯示版本信息; -xdev:將範圍侷限在先行的文件系統中; -xtype<文件類型>:此參數的效果和指定「-type」參數相似,差異在於它針對符號鏈接檢查。
[root@cinder01 ~]# find .
在/home目錄下查找以.txt結尾的文件名
[root@cinder01 ~]# find /home -name "*.txt"
同上,但忽略大小寫
[root@cinder01 ~]# find /home -iname "*.txt"
當前目錄及子目錄下查找全部以.txt和.pdf結尾的文件
[root@cinder01 ~]# find . \( -name "*.txt" -o -name "*.pdf" \) 或 [root@cinder01 ~]# find . -name "*.txt" -o -name "*.pdf"
匹配文件路徑或者文件
[root@cinder01 ~]# find /usr/ -path "*local*"
基於正則表達式匹配文件路徑
[root@cinder01 ~]# find . -regex ".*\(\.txt\|\.pdf\)$"
split [選項] [input_file] [output_file]
split命令選項說明
-b size 指定分割出來的文件大小,size能夠加入單位,b表示512字節,k表示1KB,m表示1MB -n 將「n」指定分割的每一個文件的長度,默認爲1000行 -d 將split命令生成的文件序列以數字形式命名 -a 指定split命令生成的文件序列的長度,默認長度爲2
[root@cinder01 ~]# split -b 10k messages-20170925 messages
mv [選項] 源文件或者目錄 目標文件或者目錄
mv命令的選項及其說明
-i 交互式操做,在對已經存在的文件或者目錄覆蓋時,系統會詢問是否覆蓋 -f 禁止交互式操做,在mv將要覆蓋文件或者目錄時,不提示任何提示,默認覆蓋
[root@cinder01 ~]# mv 12333.jpg 1111.jpg