Tôi muốn chắc chắn khuyên không sử dụng sed, bởi vì nó không hề biết về các định dạng tập tin và bạn có thể dễ dàng kết xuất tệp kết xuất SVN không sử dụng được.
Ngoài ra, nếu bạn muốn thay thế nhiều hơn một chút so với chỉ một đường dẫn, bạn cần phải cập nhật hoặc chỉ cần loại bỏ tổng kiểm tra SHA1 và MD5.
Sửa đổi một bãi chứa SVN thực sự không phải là tầm thường như nó có vẻ như lúc đầu.
Tôi đã gặp vấn đề tương tự, hôm qua và tôi đã viết một chương trình nhỏ cho mục đích này. Tôi công bố nó ở đây cho mọi người sử dụng:
https://github.com/nlmarco/svndumptransformer
Đó là phần mềm miễn phí và bạn đang chào đón để sửa đổi nó, nếu bạn muốn/cần nhiều tính năng hơn.
Chương trình này chỉ sửa đổi nội dung văn bản (nếu tệp - ví dụ: hình ảnh - được đánh dấu có loại "ứng dụng/octet-stream" loại mime, nó không bị sửa đổi). Và vì nó thực sự đọc và hiểu định dạng kết xuất SVN, nó không sửa đổi dữ liệu cấu trúc thuộc về bãi chứa SVN - không giống như lệnh sed ở trên.
Đối với tôi, chương trình này hiện đang hoạt động tốt khi đổi tên một sản phẩm - làm cho tất cả đường dẫn cũng như tệp cấu hình dự án (=> gradle) và vài chục lớp Java được đổi tên.
Tôi hy vọng rằng chương trình này cũng hữu ích cho người khác.
Btw. Tôi biết rằng câu hỏi này là rất cũ, nhưng tôi hy vọng rằng câu trả lời của tôi có thể giúp những người khác gặp phải vấn đề này, bây giờ.
không xử lý cấu trúc dữ liệu phức tạp như bãi chứa svn với công cụ đơn giản như sed. Không ai đảm bảo rằng chuỗi ': dir1' không bao giờ xuất hiện ở nơi khác. – reto
Trong trường hợp đó, bạn sẽ gặp lỗi 'Checksum mismatch' khi tải tệp đã xử lý. Xem định dạng tệp kết xuất: http://svn.apache.org/repos/asf/subversion/trunk/notes/dump-load-format.txt – fglez
Thật tuyệt vời. Nó hoạt động. Nó là cách đơn giản nhất để di chuyển với các thư mục trong bãi chứa svn! – qub1n