問題タブ [xmllint]
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 - xmllint/xpath から文字列を返す
次の xml の抜粋があり、必要なのは Version タグの文字列 2014.4.0.0008 だけです。
私はいくつかのことを試しましたが、これまでのところ得ました:
しかし、何も機能していないようです。これは、XPath セットが空であることを示しており、 --xpath パラメータに string() を含めると、何も返されません。
xml - awk と xmllint を使用して XML に似たファイルをインデントする
多くの構成データを含む「XML に似た」ファイルがあります。"]]>]]> で区切られた 3 つの XML ファイルを連結したようなものなので、「XML に似ている」と言います。
例えば
ファイル内のすべての XML タグをインデントするために xmllint を呼び出すスクリプトを作成しようとしています。ただし、xmllint (および他の多くの xml 書式設定プログラム) では、ファイル内に XML ドキュメントが 1 つだけ存在する必要があるようです。たとえば、ファイルは " " で始まり、<?xml version="1.0" encoding="UTF-8"?>
ルート ツリーが 1 つだけ含まれている必要があります。
そこで、データを個別のチャンクに解析して xmllint に渡す awk スクリプトを作成しようとしましたが、通過できないというエラーが発生しています。スクリプトと出力を以下に示します。
awk が 3 つの一時ファイルに出力する操作と、それらのファイルに対して xmllint を操作する操作の 2 つの操作で実行すると、うまくいきます。
例えば
その結果、Section_1.txt、Section_2.txt、および Section_3.txt の 3 つのファイルが作成されます。Section_2.txt の内容は次のとおりです。
そのファイルを xmllint でフォーマットできます。
したがって、awkスクリプトの最初の場所でxmllintにパイプできない理由がわかりません。
あなたが提供できる助けに感謝します。
-ジョン
utf-8 - xmllint: UTF-8 数値参照を文字に変換する方法
xmllint からの出力で、UTF-8 数値参照を文字に変換したいと考えています。
再現するには:
出力を次のようにしたい:
man ページを読み、さまざまなオプションを試しましたが、何も機能しませんでした。
可能であれば、xmllint のオプションを使用してこれを達成したいと考えています。または、Linux ディストリビューションで一般的に見られる別のコマンド ライン ツールでは不可能な場合です。
ありがとう!
xmllint - xmllint に不正なデフォルト xmlns を強制的に無視させる
を使用して多数の xml ファイル (maven poms) を処理しようとしていますxmllint --xpath
。いくつかの試行錯誤の結果、これらのファイルのデフォルトの名前空間宣言が正しくないために、期待どおりに機能しないことがわかりました。これは次のとおりです。
単純なコマンドは次のように失敗します。
xmlns 属性を削除した場合、ルート要素を次のように置き換えます。
前のコマンドは、予想される出力を提供します。
特にmaven自体は文句を言わないので、何百ものpomファイルを変更することはオプションではありません。
xmllint
でファイルを処理する方法はありますかxmlns
?
アップデート
ダミアンのおかげで、私はいくつかの進歩を遂げることができました:
しかし、これは私が必要とすることを完全には行いません。私のフォローアップの質問は次のとおりです。
テキストだけを印刷する方法はありますか?
4.0.0
上記の例で出力に on を含めたい約 30 文字で出力が切り捨てられるようです。完全な出力を取得することは可能ですか? これは起こりません
xmllint --xpath
xml - xmllint を使用して複数の値をフェッチする
xmllint から xpath を使用して、ホスト名とシリアル番号を取得したいと考えています。
ここにXMLがあります
ホスト名 blah* ですべてのシリアルを取得できます。
しかし、どのホスト名がそのシリアルを持っているかも知りたいです。それは可能ですか?
bash - 要素の背後にあるテキストを選択する方法は?
要素を選択する次のxmllint
例があります。
太字の要素の後ろには、関心のあるメッセージの数があります。parent
軸を使用すると表示されます。
軸が正確にこの数値を与えるのではないかと思ったのですfollowing-sibling
が、そうではありません:
ios - xcode ローカリゼーション エクスポート xmllint 失敗
xcode プロジェクトに奇妙な問題があります。ローカリゼーション xcode をインポートまたはエクスポートしようとすると、次のエラー メッセージが表示されます。
一部の調査では、ステータス 1 の意味Unclassified
がわかりませんが、それが何を意味し、どこで答えを探すべきかがわかりません。
他の 2 台の Mac でこれを実行しようとしましたが、すべて同じエラーが表示されます。どういうわけか、私のプロジェクトを解析できないようです。
誰かが私を正しい方向に向けることができますか?