
各位,我對這個命令有幾個問題:
echo 'cat //item/*[local-name()="id"]/text()' | xmllint --shell test.xml | sed '1 d;$ d;/^ -------$/ d' | sort | uniq --repeated
我認為命令管道是從左到右工作的。我cat
對沒有使用任何東西的命令感到困惑(cat
我見過的命令通常與文件範例一起使用cat test.xml
)。
另外,我不完全確定cat //item/*[local-name()="id"]/text()
在做什麼,有人可以解釋嗎?我知道它基本上是為 XPath 模式做一個貓,但是,它看起來很混亂,特別是與其他管道相比,並且 XPath 沒有任何反對(同樣,它通常與 xml、html 等文件一起使用)。
我基本上是命令新手sed
,有人可以解釋一下這代表什麼嗎sed '1 d;$ d;/^ -------$/ d'
?
謝謝。