2012-12-04 33 views

回答

1
xmlstarlet sel -B -t -c "//node()[$RANDOM mod last() + 1]" input.xml 

-B帶空白節點,你可能不希望選擇...


我也使用math:random()在exslt.org定義的嘗試:

xmlstarlet sel -N math=http://exslt.org/math -B -t --var r='math:random()' \ 
-c '//node()[round($r * last()) + 1]' -n input.xml 

但它似乎每次都使用相同的種子。