Làm cách nào để sao chép một liên kết tượng trưng?


41

Tôi có một liên kết tượng trưng đến một tập tin trong một thư mục. Tôi muốn có cùng một liên kết trong thư mục khác. Làm thế nào để tôi sao chép một liên kết tượng trưng?

Tôi đã cố gắng để cp liên kết tượng trưng nhưng điều này sao chép tập tin mà nó trỏ đến thay vì chính liên kết tượng trưng.


1
cphỗ trợ -Phoặc --no-dereferencechuyển đổi CentOS không?
manatwork

@manatwork: Cảm ơn nó chỉ tìm thấy điều đó. Nếu bạn muốn đăng nó như một câu trả lời tôi sẽ chấp nhận nó.
Người dùng

Câu trả lời:


54

Sử dụng cp -P(viết hoa P) để không bao giờ đi qua bất kỳ liên kết tượng trưng nào và sao chép liên kết tượng trưng thay thế.

Điều này có thể được kết hợp với các tùy chọn khác như -Rsao chép hệ thống phân cấp thư mục - cp -RLđi qua tất cả các liên kết tượng trưng đến thư mục, cp -RPsao chép tất cả các liên kết tượng trưng như vậy. cp -Rcó thể làm cái này hay cái khác tùy thuộc vào các biến thể unix; GNU cp(như được tìm thấy trên CentOS) mặc định -P.

Ngay cả với -P, bạn có thể sao chép mục tiêu của một liên kết tượng trưng vào một thư mục trên dòng lệnh bằng cách thêm một /ở cuối: cp -RP foo/ barsao chép cây thư mục footrỏ đến.

GNU cpcó thuận tiện -alựa chọn kết hợp -R, -P, -pvà nhiều hơn một chút. Nó tạo một bản sao chính xác của nguồn (càng xa càng tốt), duy trì hệ thống phân cấp thư mục, liên kết tượng trưng, ​​quyền, thời gian sửa đổi và siêu dữ liệu khác.


3
Coi chừng rằng một khi được sao chép / di chuyển, một liên kết tượng trưng có thể bị hỏng (nếu nguồn là một liên kết tượng trưng đến một đường dẫn tương đối).
Stéphane Chazelas

3
Có cách nào để ngăn chặn phá vỡ các liên kết tượng trưng nếu bạn đang di chuyển đến một thư mục cao hơn hoặc thấp hơn?
Andrew Brown

Như một lưu ý: "GNU cp" không giống với gcpcái mà tôi sử dụng. gcp -Phiện đang bị phá vỡ, ngay cả trong năm 2019. (thở dài).
tgm1024

1

Kiểm tra câu trả lời này https://superuser.com/a/315757/53590 để biết một CentOS cụ thể về vấn đề này. Toàn bộ câu hỏi có thể giúp bạn nhưng bit ở phía dưới cụ thể là CentOS.


1
Lưu ý rằng những người khác có thể chọn một thứ tự khác với thứ tự của bạn để liệt kê các câu trả lời. Bên cạnh đó, thứ tự có thể thay đổi theo thời gian. Xin vui lòng gửi một liên kết trực tiếp đến câu trả lời được đề cập. (Nhấp vào “chia sẻ” liên kết bên dưới câu trả lời đó và sao chép liên kết trực tiếp xuất hiện.)
manatwork
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.