由于對shell腳本沒有去深究,只是臨時遇到了這個需求,才全網的查找,解決這個需求的方法應該有好多,但目前,我實際使用驗證了如下方法可行,后續抽空學習下shell腳本,言歸正傳,需求如下:
1、需求:
我有個頭檔案,內容大概如下:
/*******def.h******/
...
#define A_B_CC "20201111am"
...
#define A_B_CC 的值會變化,當前是20201111am,下次可能變成20211111pp
如何使用shell腳本來獲取A_B_CC對應的常量值(這里目前是20201111am) 并將其保存到一個txt檔案
2、解決方法:
方法1:
cat def.h | grep "#define A_B_CC" | cut -d '"' -f 2 >Version.txt
這條陳述句分三小句,我想,第1/2兩句應該大家都懂,解釋下第3句:cut -d ‘"’ -f 2 ,
-d和'"'一起把管道輸入的一行字串進行了域的分隔,每一個分隔符(在這里是個雙引號“"”)前面的字串被稱為一個域,若有n個分隔符,這個域的編號則從1開始到n+1,第1個分隔符前面的字串為第1個域,這個域對應在該命令列則是-f后面的數字2,所以該命令`cut -d '"' -f 2表達的意思是輸出第二個分隔符“"”之前的域,
方法2:據說可以使用sed,awk等,我不會,歡迎補充,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/179304.html
標籤:其他
上一篇:[網路安全]SSH其他指令
下一篇:(1)linux入門必會命令
