質問

うシェルスクリプティング、通常はデータファイルのシングルラインを記録います。でも容易に扱うことがこのデータ grepsed.がまったXMLたことがなく、のようにスクリプトへのアクセスするXMLデータをョンをインストールして下さい。何にかかるものです。

役に立ちましたか?

解決

がその場で発音を確認することがxmlstarletに飽きたらこういうことも得意なんですね。

http://xmlstar.sourceforge.net/

できるように多くのdistroリポジトリです。導入のチュートリアルはこちら:

http://www.ibm.com/developerworks/library/x-starlet.html

他のヒント

一部の有望なツール:

  • :構文解析HTML/XML席にrubyを使用XPath&CSSセレクタ

  • hpricot:推奨されていません

  • fxgrep:独自のものが使用されてXPathのようなクエリ構文を提出する。書SMLで 設置するのは難しいかもしれません。

  • LT XML:XMLツールキットからの情報検索サービスのツールを含む sggrep, sgsort, xmlnorm ます。独自のものが使用されてクエリ構文です。ドキュメント 非常に フォーマルとなります。書C.LT XML2債支援のXPath,XInclude その他のW3Cです。

  • xmlgrep2:シンプルで強力な検索とXPath.ドを使用 XML::LibXMLとlibxml2.

  • XQSharp:対応し、XQueryに延長XPath.書きます。NET Framework.

  • xml-coreutils:レアードBreyerのツールキットと同等のGNU coreutils.議論に 興味深い 小論文 何の理想的なツールキットはいたします。

  • xmldiff:簡単なツールを比較するための二つのxmlファイルです。

  • xmltk:はなさそうパッケージにはdebianではなく、ubuntu、fedora、macportsいたリリース2007年から、非携帯構築の自動化を実現しております。

xml-coreutilsう最高の記録およびUNIX向け。

もあります xml22xml 対になっています。することにより通常の文字列の編集ツールの処理形式をサポートしています。

例です。q.xml:

<?xml version="1.0"?>
<foo>
    text
    more text
    <textnode>ddd</textnode><textnode a="bv">dsss</textnode>
    <![CDATA[ asfdasdsa <foo> sdfsdfdsf <bar> ]]>
</foo>

xml2 < q.xml

/foo=
/foo=   text
/foo=   more text
/foo=   
/foo/textnode=ddd
/foo/textnode
/foo/textnode/@a=bv
/foo/textnode=dsss
/foo=
/foo=    asfdasdsa <foo> sdfsdfdsf <bar> 
/foo=

xml2 < q.xml | grep textnode | sed 's!/foo!/bar/baz!' | 2xml

<bar><baz><textnode>ddd</textnode><textnode a="bv">dsss</textnode></baz></bar>

P.S.がありま html2 / 2html.

にジョセフ-ホルステンのリストを追加しますxpathのコマンドライスクリプトが付属していますPerl図書館XML::XPath.その方法から情報を抽出XMLファイル:

 xpath -q -e '/entry[@xml:lang="fr"]' *xml

利用できるxmllint:

xmllint --xpath //title books.xml

すべきとの同梱もdistros、もとの同梱は、Cygwin.

$ xmllint --version
xmllint: using libxml version 20900

参照:

$ xmllint
Usage : xmllint [options] XMLfiles ...
        Parse the XML files and output the result of the parsing
        --version : display the version of the XML library used
        --debug : dump a debug tree of the in-memory document
        ...
        --schematron schema : do validation against a schematron
        --sax1: use the old SAX1 interfaces for processing
        --sax: do not build a tree but work just at the SAX level
        --oldxml10: use XML-1.0 parsing rules before the 5th edition
        --xpath expr: evaluate the XPath expression, inply --noout

がんxmlsed&xmlgrepのNetBSD xmltools!

http://blog.huoc.org/xmltools-not-dead.html

ばんざいを解Windows Powershellのために設計された機能性読み書き形式をサポートしています。

test.xml:

<root>
  <one>I like applesauce</one>
  <two>You sure bet I do!</two>
</root>

Powershellスクリプト:

# load XML file into local variable and cast as XML type.
$doc = [xml](Get-Content ./test.xml)

$doc.root.one                                   #echoes "I like applesauce"
$doc.root.one = "Who doesn't like applesauce?"  #replace inner text of <one> node

# create new node...
$newNode = $doc.CreateElement("three")
$newNode.set_InnerText("And don't you forget it!")

# ...and position it in the hierarchy
$doc.root.AppendChild($newNode)

# write results to disk
$doc.save("./testNew.xml")

testNew.xml:

<root>
  <one>Who likes applesauce?</one>
  <two>You sure bet I do!</two>
  <three>And don't you forget it!</three>
</root>

ソース: https://serverfault.com/questions/26976/update-xml-from-the-command-line-windows

に依存していただけたらと思っています。

XSLTの道のりですが、ある学習曲線。試 xsltproc されることがありますのでご注意指定できるパラメータ。

ものもありま saxon-lint からのコマンドライン とする機能を利用XPath3.0/XQuery3.0です。(その他のコマンドラインツールを使用XPath1.0).

例:

http/html:

$ saxon-lint --html --xpath 'count(//a)' http://stackoverflow.com/q/91791
328

xml:

$ saxon-lint --xpath '//a[@class="x"]' file.xml

XQueryがよい解決策です。で(相対的)やすく学ぶとは、W3C標準装備。

のものをお勧めします XQSharp のためのコマンドラインプロセッサー

初めて使用 xmlstarlet も使用しています。時のクエリが厳しいながらプレーする必要がありまXMLの xpath2xquery 機能の支援もあった xidel http://www.videlibri.de/xidel.html

JEditはプラグインという"変換"を提供する照会機能のためのXMLを提出する。

なかなかのコマンドラインが本当にうまくいきます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top