Linux 常用指令
man [command]
顯示command這個指令的詳細使用手冊
grep [option] pattern file
用于過濾和搜尋特定的字元,使用正規表達式進行比對,搜尋出來的結果是存放在标準輸出流中的,可以進行重定向輸出。
示例:
1、cat hello.txt | grep ^h > hh.txt
先讀取檔案hello.txt,然後找到其中以字元h開頭的行,最後重新輸出到檔案hh.txt中
Note:相應的,使用str$就是表示以str結尾的内容。
2、cat hello.txt | grep -f hh.txt
先讀取檔案hello.txt,然後以hh.txt中的每行的内容為關鍵字,在檔案hello.txt中找到相應的包含關鍵字的行。
Note:此時,如果将-f選項改為-nf,則還會顯示關鍵字在hello.txt中比對到的行所在的行号。
sed
1、sed s/old/new/g file
将檔案file中的old字元串改為new字元串,但是這個是将改變後的結果輸出到标準輸出流中,需要使用>來進行重新輸出到檔案
2、sed /str/d 或者 sed n1,n2d
第一個表示删除檔案中帶有str字元串的行,第二個表示删除檔案中第2,3行
awk
指令:
-F 指定輸入檔案的分隔符,如 : -F: 即表示用:做分隔符,多分隔符: -F ‘[ ,]’ 表示用空格和,進行分隔
-v 為一個使用者變量指派,如:-va=1,即表示a這個變量的值是1
-f 從腳本中讀取awk指令
1、按照空格分隔,并輸出第一行和第四行
cat test.log | awk -F ‘[ ,]’ ‘{print 1, 1 , 2}’ > test1.log
首先讀取檔案test.log中的資料,然後将每一行的資料用空格和逗号進行分隔,将分隔之後的資料的第一列和第二列重新輸出到檔案test1.log中
2、通過比對正規表達式
cat test.log | awk ‘$2 ~ /nm.*/ {print}’
首先讀取檔案,然後通過正規表達式,找到第二列中包含nm開頭的所有的記錄
cat test.log | awk ‘/2017.*/ {print}’
首先讀取檔案,然後找到以2017開頭的記錄
Note:有一點,在加入列數 n的時候,需要在後面加上 ,比如上面的 n 的 時 候 , 需 要 在 後 面 加 上 , 比 如 上 面 的 2 ~ /nm.*/
解壓相關
tar、unzip、zip、gzip
示例:
tar.xz : tar -Jxvf file
tar.gz : tar -zxvf file
監測程式指令
ps
常用:ps -ef | grep java 查到到包含java關鍵字的程序,獲得程序号之後通過kill -9 pid殺死該程序
ps aux | grep java 也是查找程序中含有java關鍵字的
top
實時檢測程序,顯示程序相關的各種實時資訊,是可以持續檢測的
兩個的差別
1、ps檢視某一個時間的,top是會一直實時動态檢測
2、ps隻能檢視程序,top會監測系統的性能,如cpu占用率等,主要是資源占用情況
3、top指令還可操作程序
檔案相關
1、cp srcFile destFile 将srcFile檔案中的内容複制到destFile,在cp後面加上-r,則會包含目錄
2、ln -sv 源檔案 連結檔案
建立軟連接配接