Android

Cách xóa (xóa) các liên kết tượng trưng trong linux

Linux Machine in Telugu | SCP Command | Copy Files Between Remote and local machine In Linux

Linux Machine in Telugu | SCP Command | Copy Files Between Remote and local machine In Linux

Mục lục:

Anonim

Liên kết tượng trưng, ​​còn được gọi là liên kết tượng trưng, ​​là một loại tệp đặc biệt trỏ đến tệp hoặc thư mục khác. Nó giống như một phím tắt trong Windows. Một liên kết tượng trưng có thể trỏ đến một tệp hoặc một thư mục trên cùng hoặc một hệ thống tệp hoặc phân vùng khác.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách xóa (xóa) các liên kết tượng trưng trong các hệ thống Linux / UNIX bằng cách sử dụng các lệnh rm , unlink find lệnh.

Trước khi bắt đầu

Để xóa liên kết tượng trưng, ​​bạn cần có quyền ghi trên thư mục chứa liên kết tượng trưng. Nếu không, bạn sẽ nhận được lỗi Hoạt động không được phép lỗi.

Khi bạn xóa một liên kết tượng trưng, ​​tệp mà nó trỏ đến không bị ảnh hưởng.

Sử dụng ls -l để kiểm tra xem một tệp đã cho có phải là một liên kết tượng trưng hay không và để tìm tệp hoặc thư mục mà liên kết tượng trưng trỏ tới.

ls -l /usr/bin/python

lrwxrwxrwx 1 root root 9 Apr 16 2018 /usr/bin/python -> python2.7

Ký tự đầu tiên Lv, chỉ ra rằng tệp là một liên kết tượng trưng. Biểu tượng - -> Hiển thị tệp mà các liên kết tượng trưng trỏ tới.

Xóa liên kết tượng trưng bằng rm

Lệnh rm loại bỏ các tập tin và thư mục đã cho.

Để xóa một liên kết tượng trưng, ​​gọi lệnh rm theo sau là tên liên kết tượng trưng làm đối số:

rm symlink_name

Khi thành công, lệnh thoát bằng 0 và không hiển thị đầu ra.

Với rm bạn có thể xóa nhiều hơn một liên kết tượng trưng cùng một lúc. Để làm điều đó, hãy chuyển tên của các liên kết tượng trưng làm đối số, được phân tách bằng dấu cách:

rm symlink1 symlink2

Để được nhắc trước khi xóa symlink, hãy sử dụng tùy chọn -i :

rm -i symlink_name

Để xác nhận loại y và nhấn Enter .

rm: remove symbolic link 'symlink_name'?

Nếu liên kết tượng trưng trỏ đến một thư mục, không thêm dấu gạch chéo / dấu ở cuối. Nếu không, bạn sẽ gặp lỗi:

rm symlink_to_dir/

rm: cannot remove 'symlink_to_dir/': Is a directory

Nếu tên của đối số kết thúc bằng / , lệnh rm giả định rằng tệp là một thư mục. Lỗi xảy ra bởi vì, khi được sử dụng mà không có tùy chọn -d hoặc -r , rm không thể xóa các thư mục.

Để ở bên an toàn, không bao giờ tùy chọn -r khi xóa liên kết tượng trưng bằng rm . Ví dụ: nếu bạn gõ:

rm -f symlink_to_dir/

Nội dung của thư mục đích sẽ bị xóa.

Xóa liên kết tượng trưng bằng unlink

Lệnh unlink xóa một tệp đã cho. Không giống như rm , unlink chỉ chấp nhận một đối số duy nhất.

Để xóa một liên kết tượng trưng, ​​hãy chạy lệnh unlink theo sau là tên symlink làm đối số:

unlink symlink_name

Nếu lệnh thực thi thành công, nó sẽ không hiển thị đầu ra.

Không nối dấu gạch chéo / dấu ở cuối tên symlink vì unlink không thể xóa thư mục.

Tìm và xóa các liên kết tượng trưng bị hỏng

Để tìm tất cả các liên kết tượng trưng bị hỏng trong một thư mục nhất định, hãy chạy lệnh sau:

find /path/to/directory -xtype l

/path/to/directory/symlink1 /path/to/directory/subdir/symlink2

Lệnh sẽ liệt kê tất cả các liên kết bị hỏng trong thư mục và các thư mục con của nó.

find /path/to/directory -maxdepth 1 -xtype l

/path/to/directory/symlink1

Khi bạn tìm thấy các liên kết tượng trưng bị hỏng, bạn có thể xóa chúng bằng rm hoặc unlink theo cách thủ công hoặc sử dụng tùy chọn -delete của lệnh find :

find /path/to/directory -xtype l -delete

Phần kết luận

Để xóa liên kết tượng trưng, ​​sử dụng lệnh rm hoặc unlink theo sau là tên của liên kết tượng trưng làm đối số. Khi xóa một liên kết tượng trưng trỏ đến một thư mục không gắn dấu gạch chéo vào tên liên kết tượng trưng.

rm bỏ liên kết tìm thiết bị đầu cuối