大家好,我正在嘗試使用AWK從XML文件的pkg-info
中提取version=
值。
我想做一些類似的事情:
cat file_below.txt | awk some_commands
使用以下數據
<?xml version="1.0" encoding="utf-8"?>
<pkg-info overwrite-permissions="true" relocatable="false" identifier="com.application.something" version="1.2.3" format-version="2" generator-version="ABC" install-location="/Applications" auth="root">
</pkg-info>
所需輸出為:
1.2.3
先謝謝你
假設標簽中沒有換行符
處理隨機數據的版本\n
這將跳過第一次看到版本時的初始xml標記。第二次打印版本號時退出。除了雙引號外,此代碼不需要對版本號的格式進行假設。
解釋pkg-info無處不在的版本:
只是讓它讀入整個XML文件,而不是試圖沿著NL拆分內容。然后,當您強制FS正好是它的開始標記和結束標記時,那么$2必須是此類標記的第一個出現。