Chắc chắn, điều này có thể hoạt động. Xử lý tất cả mọi thứ như một tập tin, bao gồm cả một liên kết tượng trưng. Nó sẽ kiểm tra xem tệp có tồn tại hay không (vì bạn không liệt kê bất kỳ điều kiện tiên quyết nào, không có so sánh dấu thời gian). Trong trường hợp của một symlink nó thực sự kiểm tra bất cứ điều gì liên kết trỏ đến, tất nhiên, không phải là liên kết chính nó.
Bạn không thể hiện điều gì xảy ra khi bạn làm điều này nhưng dựa trên mô tả của bạn, một trong hai điều đang xảy ra: (a) thư mục contrib/openlayers không tồn tại để lệnh ln tạo ra lỗi và không tạo liên kết tượng trưng, do đó, hãy cố gắng tạo lại nó trong lần chạy tiếp theo, hoặc (b) liên kết tượng trưng của bạn đang được tạo không chính xác và chỉ vào không có gì, có nghĩa là khi cố gắng xem nó có tồn tại không và thực hiện sẽ cố gắng tạo lại nó.
Nếu, ví dụ: thư mục src
của bạn là anh chị em trong thư mục contrib
, thì các liên kết tượng trưng của bạn là sai; bạn sẽ nhận được:
contrib/openlayers/theme -> src/openlayers/theme
Hoặc, khi hạt nhân cố gắng giải quyết nó:
contrib/openlayers/src/openlayers/theme
Có nhiều khả năng đó là những gì bạn muốn. Tôi khuyên bạn nên sử dụng một cái gì đó như thế này:
contrib/openlayers/theme:
mkdir -p contrib/openlayers
ln -s ../../src/openlayers/theme contrib/openlayers/theme
Sau đó, xác minh rằng liên kết tượng trưng, khi đã tạo, thực sự trỏ đến nơi bạn muốn.
Bạn nói đúng, các liên kết tượng trưng đã bị hỏng. –