天天看點

一些Linux指令

ps aux | grep mysql 檢測MySQL服務是否在運作

【目錄處理指令】mkdir,cd,pwd,rmdir,rm -rf,cp,mv,ls。

【檔案處理指令】touch,cat,more,less,head -n,tail -n,ln -s。

【權限管理指令】chmod -R 777 myname,chown使用者,chgrp使用者組。

【檔案搜尋指令】find /etc -name *init*,find /etc -size +204800,find /home -user renxing, 查找出來執行删除操作: find /etc -name -exec rm {} \;which cp;whereis ls;whatis ls。

【使用者管理指令】useradd 使用者名,passwd 使用者名,who,w,uptime。

【解壓】tar -zc(x)vf abcd.tar.gz abcd,unzip abcd.zip。

【關機】shutdown -h(r) now 立即關機(重新開機);logout。

【vim】aio/AIO,:set nu,gg到第一行,G到最後一行,nG到第n行,:n到第n行,$ 移至行尾,0移至行首。yy複制,dd剪切。:w儲存,:wq儲存退出,:q!退出。

【定時任務】crontab -e|l|r.

【多指令順序執行】分号→順序執行,&&→邏輯與,||→邏輯或。

【管道符】 指令1 | 指令2 (指令1的正确輸出作為指令2的操作對象)

【位置參數變量】[$n] ,[$*] ,[$@],[$#]。

【接收鍵盤輸入】read [選項] [變量名]

【declare聲明變量類型】declare [+/-][選項] 變量名

【數值運算】“$((運算式))”或“$[運算式]” → $[$aa+$bb]

【字元截取指令】

① cut [選項] 檔案名,一般和管道符 grep 一起使用。cut指令不能識别空格作為分隔符的字元串,awk指令可以。

② awk指令:awk 'BEGIN{print "start" }END{print "over"} {print $2 "\t" $6}' student.txt #給内容前後都追加

③ printf '輸出類型輸出格式' 輸出内容

【printf 和 echo 和 cat】

① 用cat 可以檢視一個文本的内容:cat stu.txt

② 要使用printf檢視文本内容:printf ‘%s’ $(cat student.txt)

③ 調整格式輸出: printf '%s\t %s\t %s\t %s\t %s\t %s\t \n' $(cat student.txt)

④ 學習printf 的原因在于:awk指令中不支援cat 和 echo。

◆ 在awk指令的輸出中支援print和printf指令

① print:會在每個輸出之後自動加入一個換行符(Linux預設沒有print指令,但是awk中有)

② printf:是标準格式輸出指令,并不會自動加入換行符,如果需要換行,需要手工加入換行符。

【sed指令】sed [選項-n/-e/-i] [動作] 檔案名 ([動作]a \:追加。c \:行替換。i \:插入。d:删除指定的行。p:列印輸出指定的行。s:字串替換)

案例①:df -h | sed -n ‘2p’ #擷取磁盤資訊df -h 的第二行資料

案例②:sed ‘2,4d’ student.txt #删除第二行到第四行的資料,但不修改檔案本身

案例③:sed ‘2a hello’ student.txt #在第二行後追加hello

案例④:sed ‘2i hello’ student.txt #在第二行前插入資料

案例⑤:sed ‘2c person’ student.txt #替換第二行的資料

【字元串替換】sed ‘s/舊字串/新字串/g’ 檔案名 (允許多個條件同時執行,使用 -e ,條件之間使用分号。)

案例①:sed ‘3s/74/99/g’ student.txt #在第三行中,把74換成99

案例②:sed -i ‘3s/74/99/g’ student.txt #sed操作的資料直接寫入檔案,但是沒有輸出

案例③:sed -e ‘s/Liming//g ; s/Gao//g’ student.txt #同時把“Liming”和“Gao”替換為空

【排序指令】: sort [選項] 檔案名,【統計指令】:wc [選項] 檔案名

【條件判斷】-d是否為目錄,-e檔案是否存在,-f是否為普通檔案。

【if語句】if [ 條件判斷式 ];then 程式 fi

【for1】for 變量 in 值1 值2 值3… do 程式 done,在批量處理檔案中非常實用!

【for2】for (( 初始值;循環控制條件;變量變化 )) do 程式 done

【while】while [ 條件判斷式 ] do 程式 done