#grep -v "#" /etc/zabbix/zabbix_agentd.conf|grep -v "^$" 表明^$空格,-v表明不顯示html
獲取腳本當前目錄:BUILD_PATH=$(cd "$(dirname "$0")"; pwd)spa
pwd 是當前用戶所在路徑.net
好比Dev-FandeiMac:~ code-pc$ /tmp/t.sh 1 2code
$0:/tmp/t.shregexp
pwd:~htm
$(dirname "$0"):/tmpblog
獲取文本內容的第幾行進程
wc -l a.txt 統計a.txt 行數crontab
查看文件a.txt的第190行到196行,test
sed -n '190,196p' a.txt
若是查看某一行用
sed -n '190,1p' a.txt
sed -n 'a,bp' a.txt 讀取自第a行到第b行的數據
if(a > b ) return 第a行
實現變量+1
i=`expr $i + 1`
ret=$(cat /etc/ansible/hosts |awk '{if($1=="'$1'"){print$1" "$2}}')
輸出第一列符合某值的行的第一二列
其中"'$1'"表明外部變量,不是指第一列
a 追加內容 sed ‘/匹配詞/a\要加入的內容’ example.file(將內容追加到匹配的目標行的下一行位置)
i 插入內容 sed ‘/匹配詞/i\要加入的內容’ example.file 將內容插入到匹配的行目標的上一行位置)
示例:
#我要把文件的包含「chengyongxu.com」這個關鍵詞的行前或行後加入一行,內容爲「allow chengyongxu.cn」
行前加
sed -i '/allow chengyongxu.com/i\allow chengyongxu.cn' the.conf.file
行先後
sed -i '/allow chengyongxu.com/a\allow chengyongxu.cn' the.conf.file
sed -i '/1/a\t' t.txt
在t.txt中找到一行內容爲1,而後再改行後面寫入t(mac不能用)
在一行的兩段添加內容
sed 's/$/&tail/g' test.txt 每行尾添加tail
sed 's/^/head&/g' test.txt 每行頭添加head
精確匹配一個進程
echo "[INFO LOG][`date +%y/%m/%d-%H:%M:%S`]:ps -efww |grep /data/C++/log|grep logd|grep -v start.sh|grep -v grep"
顯示匹配行的行號
sed -n '/sjob_exec.sh/=' /etc/crontab
顯示匹配的行內容
sed -n '/sjob_exec.sh/p' /etc/crontab
修改指定行的內容
sed -i "row s/#//" /etc/crontab
修改匹配行
row=$(sed -n '/sjob_exec.sh/=' /etc/crontab)
sed -i "$row s/#//" /etc/crontab
參考連接:http://www.runoob.com/regexp/regexp-syntax.html
https://blog.csdn.net/ggz631047367/article/details/49508211