シェルスクリプトでコマンドラインを使用して、exist-dbにいくつかのxmlファイルをインポートする必要があります。あるファイルがすでに存在していて、それらのファイルを上書きしたくないという機会があります。既存のファイルをスキップして報告するコマンドライン引数(または他の解決策)がありますか?私は公式のドキュメントを閲覧しようとしましたが、類似のものを見つけることができませんでした。exist-dbコマンドラインからファイルをインポートする
答えて
eXistのコマンドラインクライアントでは、リソースの上書きを警告/無効にすることはできません。 http://exist-db.org/exist/apps/doc/java-admin-client.xml#command-lineのクライアントのマニュアルを参照してください。
上書きを避けるという目標への最短パスは、上書きするときに警告するWebDAVクライアントを使用することです。このシナリオを処理するオプションがあります。たとえば、TransmitとoXygen XML Editorは、上書きされるリソース/コレクションが存在する場合に警告します。 (バックグラウンドでは、指定されたディレクトリのリソースのリストを取得し、この名前のリソースがリストに含まれている場合にPUTしようとすると警告します)。
コマンドラインが必須の場合は、先に進む前にリモートコレクションをリストするか、リソースの存在を照会する何らかの方法が必要です。たとえば、あなたが「check.xq」にこのクエリを保存する場合は、bin/client.sh -F check.xq
として、それを実行することができます:
doc-available("/db/my/collection/file.xml")
(: or for binary docs:
util:binary-doc-available("/db/my/collection/file.txt")
or either XML documents or binary resources:
some $resource in xmldb:get-child-resources("/db/my/collection") satisfies $resource eq "file.xml"
:)
が存在しても、Apache Antをは(http://exist-db.org/exist/apps/doc/ant-tasks.xmlを参照)をサポートしています。 xdb:store
には上書きを制御するフラグがありませんが、ファイルの存在を最初に確認してから、xdb:exist
と保存して、既存のファイルとスキップを報告するantスクリプトを作成できます。 antオプションについての良い点は、引数にコマンドラインパラメータ(例:ant upload-file -Ddir=/path/to -Dfile=file.xml -Dcollection=/db/my/collection
)を渡すことができ、サーバーURLや資格情報などのパラメータをbuild.properties
ファイルに保存できることです。完全な例は用意されていませんが、antオプションを追求することに興味がある場合は、問題が発生した場合はコメントを付けてお知らせください。
ありがとうございます。私はおそらくxqueryを使用しますが、私は存在するclentに必要なオプションがあることを望んでいました。ありがとうございました。 –
- 1. Pythonのコマンドラインからファイルをインポートする方法
- 2. コマンドラインからxcode体系をインポートする
- 3. Xquery update(eXistdb)のエラー
- 4. eclipse jdtプロジェクトをコマンドラインからインポート
- 5. Windowsでコマンドラインからmysqldumpを使用してSQLファイルをインポートする方法
- 6. MySQL 5.5 - コマンドラインから大きなsqlファイルをインポートする際の問題
- 7. コマンドラインからdgmlファイルを生成する
- 8. コマンドラインからファイルを移動する
- 9. コマンドラインから.xapファイルを作成する
- 10. 高度なインストーラでコマンドラインからmysqlデータベースをインポートする方法
- 11. Swiftをコマンドラインでインポート
- 12. コマンドラインからファイルの場所を渡す
- 13. MySQLコマンドライン、多くのファイルをインポートするためのソース
- 14. 大きなSQLファイルをMySqlにコマンドラインでインポートする
- 15. warファイルからインポート
- 16. Javaのローカルファイルシステムからファイルをインポートする
- 17. フォルダからファイル.pyをインポートする
- 18. assetsフォルダからファイルをコンパイル/インポートする
- 19. ファイルからPythonモジュールをインポートする
- 20. WARCファイル(WebArchive)からデータをインポートする
- 21. Joomla! - CSVファイルからユーザーをインポートする
- 22. iOSからアプリケーションにファイルをインポートする
- 23. Android StudioはコマンドラインからEclipseプロジェクトをインポートします
- 24. ファイルから設定をインポート
- 25. PHPからファイルをインポート/エクスポート
- 26. Excelファイルからデータをインポート
- 27. Oracleコマンドラインによるインポート/エクスポート
- 28. PYTHONコマンドラインからファイルを取得
- 29. コマンドラインからWAS 7にEARファイルをデプロイ
- 30. コマンドラインからWARファイルを実行
どのバージョンのeXistですか?また、シェルスクリプトのファイルをアップロードするために現在どの方法を使用していますか? – joewiz
私は最新のバージョンを使用しています。インポートに使用するコマンドはbin/client.sh -m/db/my/collection -p /path/to/file.xmlです。 –