🐈

IIIFのCanvas URIなどを一括置換する際のコマンド

2024/07/02に公開

複数のIIIFマニフェストファイルに対して、Canvas URIを一括置換したい場合があります。

例えばカレントディレクトリ以下のJSONファイルに対して、www.dl.ndl.go.jpdl.ndl.go.jpに置換したい場合のコマンドは以下です。-i ''オプションは macOS 特有の構文です。

find . -type f -name "*.json" -exec sed -i '' 's/www\.dl\.ndl\.go\.jp/dl\.ndl\.go\.jp/g' {} +

注意: このスクリプトはファイルを直接変更します。重要なデータに対して使用する前には、必ずバックアップを取るなどの対策をお勧めします。また、バイナリファイル(画像や実行ファイルなど)に対してテキスト置換を行うとファイルが壊れる可能性があるため、適用するファイルの種類には注意してください。

参考になりましたら幸いです。

Discussion