Nguyên tắc chung là nếu một lệnh hoạt động trên các liên kết (tức là các mục trong thư mục, là các con trỏ tới các nút) thì lệnh sẽ tự xử lý các liên kết tượng trưng chứ không phải là đối tượng mà liên kết trỏ tới. Mặt khác, lệnh hoạt động trên những gì symlink trỏ đến. Do đó, cp
theo các liên kết tượng trưng theo mặc định và sao chép nội dung của tệp được trỏ đến bởi liên kết. Nhưng khi bạn yêu cầu cp
xử lý các mục trong thư mục bằng cách chỉ định -R
, nó sẽ dừng theo các liên kết tượng trưng. mv
luôn luôn làm việc với các mục thư mục, và vì vậy nó không bao giờ theo các liên kết tượng trưng.
Các find
hoạt động bình thường của lệnh là để hoạt động trên các directory-entry, vì vậy liên kết tượng trưng không được tuân thủ theo mặc định. Thêm các -L
nguyên nhân find
để theo liên kết tượng trưng cho tất cả các thuộc tính ngoại trừ một thuộc tính không thể bỏ qua khi thực hiện tìm kiếm thư mục, tên. Một trong những mục đích của find -name
là cung cấp đầu vào cho các lệnh như mv
và rm
, hoạt động trên các mục nhập thư mục. Sẽ có kết quả khó chịu và đáng ngạc nhiên nếu find -L dir -name
có thể tạo ra các tên được chỉ ra bên ngoài cây thư mục bắt nguồn từ dir
.