Đây là mục đích của ln
's -f
lựa chọn: nó loại bỏ các tập tin đích tồn tại, nếu có, trước khi tạo liên kết.
ln -sf /path/to/data/folder/month/date/hour/minute/file /path/to/recent/file
sẽ tạo liên kết tượng trưng /path/to/recent/file
trỏ tới /path/to/data/folder/month/date/hour/minute/file
, thay thế bất kỳ tệp hiện có hoặc liên kết tượng trưng nào thành tệp nếu cần thiết (và hoạt động tốt nếu không có gì tồn tại ở đó).
Nếu một thư mục, hoặc liên kết tượng trưng đến một thư mục, đã tồn tại với tên đích, liên kết tượng trưng sẽ được tạo bên trong nó (vì vậy bạn sẽ kết thúc bằng /path/to/recent/file/file
ví dụ trên). Các -n
tùy chọn, có mặt tại một số phiên bản của ln
, sẽ chăm sóc của liên kết tượng trưng đến thư mục cho bạn, thay thế chúng khi cần thiết:
ln -sfn /path/to/data/folder/month/date/hour/minute/file /path/to/recent/file
POSIXln
không chỉ định -n
vì vậy bạn không thể dựa vào nó nói chung. Phần lớn ln
hành vi được xác định theo triển khai, do đó bạn thực sự cần kiểm tra các chi tiết cụ thể của hệ thống bạn đang sử dụng. Nếu bạn đang sử dụng GNUln
, bạn cũng có thể sử dụng các tùy chọn -t
và -T
, để làm cho hành vi của nó hoàn toàn có thể dự đoán được khi có các thư mục ( nghĩa là thất bại thay vì tạo liên kết bên trong thư mục hiện có cùng tên).