2017-02-23 1 views
0

document.doc이라는 표준 Word 문서가 있다고 가정합니다. 이 문서에는 더 이상 존재하지 않는 서버에 대한 하이퍼 링크가 있습니다. 링크를 적절한 파일로 바꾸고 싶습니다. 많은 파일에서이 작업을 수행해야하므로이 파일을 자동화하는 방법이 있기를 바랍니다.Microsoft Word 외부의 Word 문서에서 하이퍼 링크 바꾸기

Microsoft Office 외부의 다른 하이퍼 링크로 어떻게 변경합니까? 가급적 리눅스/유닉스 환경에서.

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가 아니기 때문에 간단한 텍스트 편집기로 편집 할 수 없습니다.

쉽게 단어 Interop를 라이브러리를 사용하여 VBA 매크로 \ 다른 언어를 사용할 수 있습니다 - 당신이 경우에, 지금은 필요에 따라

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

을 확인 & 자세한 내용은, 대체이 간단한 검색을 수행 서버 측에서이 작업을 수행해야 할 필요가 있습니다. OpenOffice를 사용하거나 더 나은 방법 인 Aspose (상업용 라이센스 3 부 라이브러리)를 사용하여 이러한 작업을 수행 할 수 있습니다 (꽤 비싸지 만 모든 가치가 있습니다. Google).

클라이언트 측면에서 (클라이언트가 단어를 사용한다고 가정하면 , 그들은 Windows를 실행하는 것을 의미합니다) 당신은 VBA macro \ Office addin을 사용하여 그것을 할 수 있습니다.