2017-02-23 5 views
0

document.docという標準のWord文書があるとします。 この文書の中には、もう存在しないサーバーへのハイパーリンクがあります。リンクを適切なものと置き換えたいので、これを多くのファイルに対して行う必要があるので、私はそれを自動化する方法があることを願っています。Microsoft Word以外のWord文書内のハイパーリンクを置換する

Microsoft Office以外からのハイパーリンクを変更するにはどうすればよいですか? Linux/Unix環境での使用が好ましい。

sed -ir 's/www.badlink.com/www.goodlink.com/' document.doc 

私は、ドキュメント内のすべてのハイパーリンクが平文で保存されていると私はそのための場所で編集するには、このような単純なsedアプローチを試してみました

strings document.doc | grep -i "hyperlink"

で見ることができることに気づきました

その後、stringsを再度呼び出して、ハイパーリンクが変更されたことを確認しました。ただし、sedを使用した後、MS Wordで文書を開くことはできません。ファイルが破損していると表示されます。

Linux/UnixツールでMicrosoft Word文書のリンクを簡単に編集する方法はありますか?最悪のケースでは、Microsoft Officeマクロを使ってこのタスクを実行できると思います。それが唯一の可能性であるなら、それは大丈夫です。

答えて

1

DOCはRTFではありません。単純なテキストエディタで編集することはできません。

あなたは簡単に単語相互運用ライブラリを使用してVBAマクロ\いくつかの他の言語を使用することができます - あなたがあれば、今、それはあなたのニーズによって異なり

https://msdn.microsoft.com/en-us/library/f1f367bx.aspx

をチェック&詳細については、交換してください。この単純な検索を行うにはサーバー側でこれを行う必要がありますが、あなたはいつもOpenOfficeまたはそれ以上のものを使用することができます。これらのことを行うには、Aspose(商用ライセンスの第3部ライブラリ)を使うことができます。クライアント側では、(クライアントが単語を使用すると仮定すると、彼らはWindowsを実行していることを意味します)あなたはVBAマクロ\ Officeのアドインを使用してそれを行うことができます。

関連する問題