問題タブ [xmlstarlet]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xml - xmlstarlet との闘い
私はxmlstarletで解析する必要がある非常に単純なXMLファイルを持っています(私はWindowsの下にいます):
CtrlSum 要素を取得したいとしましょう。試してみると失敗します
しかし、ファイルから xmlns および xmlns:xsi 属性を削除すると機能します (ただし、実際にはできません)。-N オプションを使用する必要があることはわかっていますが、その方法がわかりません。どんな助けも非常に価値があります。
ローラン(またはローレンス、またはラリー:))に感謝します
bash - pom.xmlを解析するときにXMLStarletに複数の開発者ロールを抽出させるにはどうすればよいですか?
奇妙な階層のbashスクリプトを使用して数百のpomを解析し、すべてのプロジェクトの概要を1つのレポートに抽出しています(maven-info-projects:project-teamでは一度に実行できないようなものです)。公開されていない理由で、親pomをいじったり、maven-info-projectsセクションを構成したりしたくありません。
XMLStarletがインストールされているのに使用していますが、 xmllintはインストールされていません。
以下を含むpom.xml抽出が与えられます:
XMLStarletを1回呼び出すだけで、複数のロールを含むすべての開発者情報を抽出するにはどうすればよいですか?
現時点では、次の方法で情報の大部分を抽出できます。
どこ
次に、結果を分割します。
問題は、複数の役割を持つ開発者が役割を連結することです。
xmlstarletの元の呼び出しに、複数の役割を組み合わせて、たとえばコンマ区切りのリストにする方法はありますか?
xml - xml をキーと値のペア表記に変換する
xmlstarlet el -v
すべての属性と値を含む xml ファイルの構造を表示するために使用します。その出力をある種のキーと値のペアに変換したいと思います。つまり、各属性とその値を別々の行 (XPath を含む) に変換したいと考えています。各行は一意である必要があります。
現在の結果:
望ましい結果(似たようなものである可能性があります。インデックスは単なるアイデアです):
私が達成しようとしているのは、diff
そのような 2 つのファイルを実行できるようにするか、grep
一致するパターンをフィルター処理するために使用することです。sed
を使用せずに、awk
またはそれ自体以外のものを使用せずに、そのような出力を作成する方法があると確信していxmlstarlet
ます。
私は xmlstarlet と xml の世界全体に関してかなりの初心者です (xml が複雑で構文解析のオーバーヘッドなどが原因で嫌いというだけではありません)。ありがとう!
xpath - xmlstarlet sel は最初に 2 つを連結します – これはバグですか、それとも CLI での私のミスですか
content.opfファイルのマニフェスト セクションから bash 要素を取得しようとしました。
xmlstarlet sel -N "dc=http://purl.org/dc/elements/1.1/" -N "opf=http://www.idpf.org/2007/opf" -t -v 'opf:package/opf:manifest/opf:item/@href' content.opf
リスト内の最初の 2 つの結果を 1 つの要素として連結して使用
します。
xmlstarlet のバグですか、それとも私のせいですか?
xpath - XPath2.0式を評価するためのプログラム/ツール
xmlstarletは、xpath1.0式を評価するために使用できます。ただし、XPath2.0式はサポートされていません。XPath 2.0式を評価するために使用できるプログラム/ツールは何ですか?できればCで書かれたものはありますか?xmlstarletによく似ていますか?
期待してくれてありがとう。
xml - コマンド ラインによる XML の解析
したがって、xmlstarletを使用してBASHスクリプトなどで解析したいXMLファイルがあります(または、人々が例を挙げてくれる場合は別の方法があります)。
基本的な構造は次のとおりです。
そこには他にもいくつかのフィールドがあり、意味と読み方は数が変わる可能性があります。基本的に読み方、意味、画数などを全部出して、BASHでHTML表を生成したいです。
これもまた、検索が必要な多くの文字を含む大きなファイルです。そこで、$1 を受け取り、それを使用してタグに基づいて値を検索するスクリプトでこれを行いたいと思います。したがって、理想的には次のようになります。
次に、コンテンツに基づいて html テーブルを生成します。
考え?(xpathのような別のプログラムを使用することもできます)
xml - xmlstarlet-ラインフィードの削除
私は次のファイルを持っていますlog.xml
:
CentOS5.4でxmlstarlet1.0.1を使用して次のコマンドを実行すると、次の行送りが削除されmessage
ます。
結果は次のとおりです。
xmlstarletを使用するCentOS6の場合:
私は受け取ります:
「and」は何にも変換されないことに注意してください。xmlstarletの問題ではなく、libxsltの変更だと思います。
それを修正する方法はありますか?
アップデート
文字「a」を0に変換する際の問題を追加しました。
xml - xmlstarlet更新値は何も起こりません
私はxmlファイルを持っています
値dbUserを更新するにはどうすればよいですか?
入力すると
何も起こりません。ターミナルにファイルの内容しか表示されません。xmlファイルは変更されませんでした。
xml - 要素を削除しますが、xmlstarlet の親要素にコンテンツを保持します
私はxmlstarletを使用していて、この種の要素を変換したい:
に:
これはxmlstarletで可能ですか?
どんな助けでも大歓迎です!
ありがとう、
ラス
xml - XML の <> タグ間の文字数を数える
私は Linux の経験豊富なユーザーではなく、大きな問題を抱えています。タグを除く XML ファイル内のすべての文字をカウントする必要があります。
例えば
私の出力は 4 または Text を返すはずです。私は理解しようとする
xmlstarlet
プログラムですが、マニュアルを読んでも使えません。
アドバイスをありがとう