天天看點

常用指令

1.檢視幫助

#man -h
#man httpd

操作:
/關鍵詞(從上往下搜尋)
?關鍵詞(從下往上搜尋)
n 定位到下一個關鍵詞
N 定位到上一個關鍵詞
q 退出
      

  

2.echo指令

#echo $PATH
#echo "hello world" > /home/hello.txt
      

3.date

按指定格式檢視
# date "+%Y-%m-%d %H:%M:%S"

設定時間
#date -s "2016-08-10 08:10:25"

檢視時區
#date "+%Z"

過去一分鐘的時分秒
#date -d "1 minutes ago" +%H:%M:%S
      

4.reboot(重新開機)

5.wget:下載下傳網絡檔案

參數:
-O 下載下傳到指定目錄
-t 最大嘗試次數
-c 斷點續傳
-P 下載下傳頁面所有資源,包括圖檔
-r 遞歸下載下傳
      

6.who

目前登入系統的使用者

7.last

檢視系統的登入記錄

8.history

顯示曆史執行過的指令,儲存在使用者家目錄的.bash_history檔案中

9.pwd

10.cd

11.ls

參數:
-a 全部檔案
-d 僅看目錄
-h 易讀的檔案
-l 顯示檔案資訊
      

12.cat

13.more/less

14.head

#head -n 10
      

15.tail:

檢視純文字文檔的後N行
參數:
-n 10顯示後面10行
-f 持續重新整理
      

16.od檢視特殊格式檔案

17.tr:轉換文本檔案中的字元

18.wc:統計行數/字數/位元組數

參數:
-l 顯示行數
-w 單詞數
-c 位元組數
      

19.diff:比較多個文本檔案差異

20.touch:建立空白檔案或修改檔案時間:

mtime:修改時間
atime:通路時間
ctime:更改權限或屬性的時間

參數:
-a 更改通路時間
-m 更改修改時間
-d 同時修改atime/mtime
-t 要修改成的時間
      

21.stat:檢視檔案狀态和通路/修改/建立時間等

22.mkdir:建立空白檔案夾

參數:
-m MODE 預設檔案目錄權限
-p 連續建立多層目錄(若檔案夾已存在則忽略)
-v 顯示建立過程
      

23.cp:複制檔案或目錄

三種情形:
目标檔案是目錄,會将源檔案複制到該目錄中
目标檔案是檔案,會将源檔案覆寫該檔案
目标檔案不存在,複制源檔案并修改為目标檔案的名稱

參數:
-p 保留原始檔案屬性
-d 如果對象為連結檔案,保留連結檔案屬性
-r 遞歸持續複制(用于目錄)
-i 目标檔案存在是否詢問覆寫
-a 相當于pdr
      

24.mv:用于移動檔案或改名

格式為:
mv [選項] 檔案名 [目标路徑|目标檔案名]
      

25.rm:删除檔案或目錄

參數:
-f 忽略警告
-i 删除前詢問
-r 删除檔案夾
      

26.dd:拷貝指定大小檔案

參數:
if 輸入檔案的名稱
of 輸出檔案名稱
bs 設定每個塊大小
count 設定拷貝塊的個數

用途:
建立硬碟鏡像
#dd if=/dev/sda of=~/sdadisk.img 

恢複硬碟鏡像
#dd if=sdadisk.img of=/dev/sdb

生成一個指定大小的空白檔案
#dd if=/dev/zero of=./test.mdb count=1 bs=10M

拷貝硬碟MBR資訊
#dd if=/dev/sda of=./mbr count=1 bs=512k
      

27.grep:搜尋文本

選項:
-b:将可執行檔案當做文本檔案來搜尋
-c:顯示找到的次數
-i:忽略大小寫
-n:顯示行号
-v:反向選擇,列出沒有關鍵詞的行
-r:遞歸搜尋
-E:使用正規表達式

示例:
grep -E "(select|union)" a.log
grep '05/Dec/2017:16' *-access_log | grep -v '404'
      

28.find:搜尋檔案

參數:
-name 比對名稱
-perm 比對權限(mode為完全比對, -mode為包含即可)
-print 将比對到的檔案輸出到标準輸出
-user 比對所有者
-group 比對所有組
-mtime (-n,+n) 比對修改内容時間(-n指n天以内,+n指n天以前)
-atime (-n,+n) 比對通路時間
-ctime(-n,+n) 比對修改權限時間
-nuser 比對無所有者的檔案
-nogroup 比對無所有組的檔案
-newer f1 !f2 比對比檔案f1新卻比f2舊的檔案
-type b/d/c/p/l/f 比對檔案類型(塊裝置,目錄,字元裝置,管道,連結檔案,檔案檔案)
-size 比對檔案大小(+500k查找超過500k的檔案,而-500k則代表小于500k的檔案)
-prune 忽略某個目錄
-exec {} \; 後面可跟對搜尋到結果進一步處理的指令



查找目前目錄下a開頭的檔案
find ./ -name a.*

查找權限為600的檔案或目錄
find ./ -perm -600

查找1天以内修改的檔案或目錄
find ./ -mtime -1

查找擴充名為txt的檔案并用檢視({}代表了查找到的檔案名,注意和後面\;之間的空格)
find ./ *.txt -exec cat {} \;
      

29.uniq:

uniq指令用于報告或忽略檔案中的重複行,一般與sort指令結合使用。
-c或——count:在每列旁邊顯示該行重複出現的次數; 
-d或--repeated:僅顯示重複出現的行列; 
-f<欄位>或--skip-fields=<欄位>:忽略比較指定的欄位; 
-s<字元位置>或--skip-chars=<字元位置>:忽略比較指定的字元; 
-u或--unique:僅顯示出一次的行列; 
-w<字元位置>或--check-chars=<字元位置>:指定要比較的字元。
      

30.sort

sort指令是在Linux裡非常有用,它将檔案進行排序,并将排序結果标準輸出

-b:忽略每行前面開始出的空格字元; 
-c:檢查檔案是否已經按照順序排序; 
-d:排序時,處理英文字母、數字及空格字元外,忽略其他的字元; 
-f:排序時,将小寫字母視為大寫字母; 
-i:排序時,除了040至176之間的ASCII字元外,忽略其他的字元; 
-m:将幾個排序号的檔案進行合并; 
-M:将前面3個字母依照月份的縮寫進行排序; 
-n:依照數值的大小排序; 
-o<輸出檔案>:将排序後的結果存入制定的檔案; 
-r:以相反的順序來排序; 
-t<分隔字元>:指定排序時所用的欄位分隔字元; +<起始欄位>-<結束欄位>:以指定的欄位來排序,範圍由起始欄位到結束欄位的前一欄位。

示例:
grep '09/Dec/2017:11' apache.log | awk '{print $1}' | sort | uniq -c | sort -n -r | head -10
      
選項:
-c 建立壓縮檔案
-x 解壓縮
-t 檢視壓縮檔案
-z 用Gzip壓縮或解壓縮
-j 用biz2壓縮或解壓縮
-v 顯示壓縮或解壓縮過程
-f 目标檔案名
-p 保留原始權限與屬性
-P 使用絕對路徑來壓縮

示例:
tar -zxvf a.tar.gz
tar -jxvf a.tar.bz2