Làm cách nào để có danh sách tất cả các tệp được liên kết trên hệ thống của tôi hoặc từ một thư mục nhất định. Tôi đã từng tạo liên kết nhưng chúng không thể quản lý được theo thời gian. Tôi muốn danh sách tất cả các liên kết như vậy từ một thư mục. Có ai giúp được không?Làm cách nào để tìm tất cả các tệp liên kết mềm hoặc cứng của các thư mục hoặc tệp khác trên linux?
Làm cách nào để tìm tất cả các tệp liên kết mềm hoặc cứng của các thư mục hoặc tệp khác trên linux?
Trả lời
Tìm symlink là dễ dàng:
% find . -type l
Tìm liên kết cứng là khó khăn, bởi vì nếu một thư mục con của thư mục trong câu hỏi cũng có thư mục con thì những tăng tính liên kết cứng. Đó là cách các thư mục con được liên kết với cha mẹ của chúng trong UNIX (đó là mục nhập ..
trong mỗi thư mục con).
Nếu bạn chỉ muốn tìm thấy liên kết file (và không phải thư mục), điều này sẽ làm việc:
% find . -type f \! -links 1
này hoạt động vì một tập tin mà không có liên kết cứng sẽ có một liên kết count> 1 , và tập tin bỏ liên kết có số lượng liên kết == 1, do đó lệnh này sẽ tìm kiếm tất cả các file có số liên kết <> 1
Ngoài ra, trên các phiên bản mới hơn của find
bạn có thể sử dụng:
% find . -type f -links +1
Điều này có cùng lý do như trên; tuy nhiên, các phiên bản tìm kiếm mới hơn có thể mất + n hoặc -n thay vì chỉ một số. Điều này tương đương với thử nghiệm lớn hơn n hoặc nhỏ hơn n, tương ứng.
Wao, đây là một lệnh nhỏ như vậy. Cảm ơn Alnitak – DKSRathore
Er ... một tệp có <1 liên kết không? Ý tôi là, nó sẽ không làm cho nó trở thành một inode vô định? – naught101
@ naught101, cung cấp -1 thực sự sẽ không tìm thấy bất kỳ tệp nào. – Alnitak
@OP, Nếu bạn có GNU tìm thấy, bạn có thể tìm các liên kết cứng bằng cách sử dụng -printf "%n"
, ví dụ:
find /path -type f -printf "%f/%n/%i\n" | while IFS="/" read filename num_hlinks inum
do
echo "Filename: $filename. Number of hard links: $num_hlinks, inode: $inum"
# if 2 or more files have the same inode number, then they are hard links.
# you can therefore count how many $inum that are the same and determine those hard links, which
# you have to try doing yourself.
done
find/-xdev -samefile filename
Xem ví dụ tại đây https://www.gnu.org/software/findutils/manual/html_node/find_html/Hard-Links.html hoặc kết hợp Alnitak và amber_linux trả lời vào find -L /where/to/search -samefile /some/link/to/file
để tìm tất cả các liên kết cứng và mềm tới một tệp nhất định.
Cảm ơn rất nhiều! Đây chính xác là những gì tôi đang tìm kiếm - làm thế nào để tìm ra những tập tin nào khác trên thực tế là tập tin giống với tập tin tôi đang xem. – cb2
- 1. làm các liên kết cứng hoặc liên kết mềm có bất kỳ không gian nào trong hệ thống tệp không?
- 2. LINUX: Liên kết tất cả các tệp từ một đến thư mục khác
- 3. Cách tìm tất cả các tệp có thư mục mẹ cụ thể trong linux?
- 4. Làm cách nào để tìm tất cả các tệp trong Thư mục có grep và regex?
- 5. Tất cả lịch sử bash Không có lỗi hoặc tệp thư mục nào trên các thư mục có dấu cách
- 6. Tìm tệp trong tất cả các thư mục có thể?
- 7. Tìm tất cả các tệp trong thư mục có chuỗi hoặc mẫu trong tên tệp bằng PHP
- 8. Sử dụng tìm để xóa tất cả các thư mục con (và các tệp của họ)
- 9. Tại sao các liên kết cứng không được phép vào các thư mục trong UNIX/Linux
- 10. Linux tất cả các tệp của thư mục được sửa đổi ngày hôm qua
- 11. TCL: Tìm kiếm đệ quy các thư mục con để nguồn tất cả các tệp .tcl
- 12. Tệp Android.mk - bao gồm tất cả các tệp nguồn trong các thư mục và thư mục khác nhau
- 13. Cách nén tất cả các tệp trong thư mục
- 14. Cách gzip tất cả các tệp trong tất cả các thư mục con trong bash
- 15. PHP: Hủy liên kết tất cả các tệp trong thư mục, và sau đó xóa thư mục đó
- 16. Theo dõi các liên kết cứng hoặc tượng trưng bằng thủy ngân trên Windows
- 17. IntelliJ Idea dưới Linux, Không có tệp hoặc thư mục nào trên lớp chính
- 18. linux bash - xóa tất cả các tệp nằm trong một thư mục từ một thư mục khác
- 19. Làm thế nào để tìm tất cả các liên kết/trang trên một trang web
- 20. làm thế nào để tìm thấy đầy đủ (đường dẫn tuyệt đối) các tập tin mục tiêu của liên kết tượng trưng hoặc liên kết mềm trong python
- 21. Làm cách nào để ký tất cả các tệp msi nằm trong thư mục?
- 22. Android, làm cách nào để có danh sách tất cả các tệp trong một thư mục?
- 23. Bash/Shell-Di chuyển tất cả các tệp từ thư mục con vào thư mục đích?
- 24. Linux có thể dọn sạch nội dung của tất cả các tệp trong một thư mục
- 25. Liệt kê tất cả các tệp và thư mục trong thư mục + thư mục con
- 26. Tìm kiếm hoặc lập chỉ mục các tệp XML
- 27. Cách liên kết các trang html trong cùng một thư mục hoặc các thư mục khác nhau?
- 28. Buộc xóa tất cả các tệp khỏi một thư mục
- 29. Làm cách nào để xóa tất cả các tệp/thư mục con ngoại trừ một số tệp trong DOS?
- 30. cách thực hiện thao tác grep trên tất cả các tệp trong thư mục
Tôi nghĩ rằng điều này thuộc về serverfault –
Serverfault là gì? – DKSRathore
thử ở đây: serverfault.com –