3
DATE_LIST=$(cat "$OUT_FILE" | xmlstarlet sel -T -t -m "//*[local-name()='entry']//*[local-name()='$start_position_date'][@name='beginposition']" -v '.' -n)
的結果是這樣的:
DATE_LIST= 2015-10-10
2015-11-11
...等等
IFS='\n' read -a array <<< "$DATE_LIST"
echo "${array[0]}" //I get the first one
echo "${array[1]}" //I get nothing
如何正確解析它? DATE_LIST
由xml生成,字符串用\n
分隔。
如果DATE_LIST'的'的每個元素自由空格的保證,則可以直接與'陣列=($(xmlstartlet ... < 「$ OUT_FILE」))'填充陣列。 – chepner
另外,您需要'IFS = $'\ n''來將'IFS'設置爲一個實際的換行符。 – chepner
第一個解決方案的作品,謝謝! 並在迴應第二條評論時添加$不會影響結果IFS = $'\ n'讀取-a數組<<<「$ DATE_LIST」' – user3960875