Làm thế nào để tìm kiếm toàn bộ ổ cứng cho một tập tin?


Câu trả lời:


157

Một đơn giản find / -type f -name ""sẽ thực hiện các mẹo nếu bạn biết tên tệp chính xác.

find / -type f -iname "filename*" nếu bạn muốn khớp nhiều tập tin hơn (bỏ qua trường hợp).

Tránh -typetùy chọn nếu bạn muốn tìm kiếm các thư mục, vv Xem hướng dẫn tìm kiếm để biết thêm thông tin. Để xem hướng dẫn, hãy ra lệnh:

man find


Dang, tôi chỉ chậm hơn vài giây: P Sẽ chỉnh sửa nó để chỉ hiển thị lệnh định vị.
Nitin Venkatesh

2
Điều này cũng sẽ tìm kiếm tất cả các thiết bị được gắn kết, có thể chỉ muốn tìm kiếm/mount/hddyouwanttosearch
Callum Rogers

Đáng chú ý là tìm thấy rất chậm, so với một hệ thống tìm kiếm được lập chỉ mục, chẳng hạn như xác định vị trí (nhưng cũng mạnh hơn)
tumbleweed

48

Bạn cũng có thể sử dụng locateđể tìm kiếm các lệnh. Tại sao mọi người sử dụng định vị nếu tìm thấy công việc? Bởi vì định vị nhanh hơn nhiều so với tìm vì nó chỉ tìm kiếm thông qua cơ sở dữ liệu của các vị trí được lập chỉ mục để tìm tệp / regex của bạn.

Ví dụ:

locate some-file.avi tìm kiếm thông qua (các) cơ sở dữ liệu của hầu hết mọi tệp trên đĩa để tìm tệp có tên "some-file.avi".

locate -i "some-file.avi" sẽ bỏ qua trường hợp của tập tin bạn đang tìm kiếm.

locate -i "*.txt" sẽ hiển thị danh sách các vị trí của tất cả các tệp có phần mở rộng **. txt * trên hệ thống của bạn.

man locate để biết thêm thông tin về tập tin

Bạn có thể cần chạy updatedbtrước để đảm bảo cơ sở dữ liệu chỉ mục được cập nhật, nếu không, 'định vị' có thể không trả về những gì bạn đang tìm kiếm.


Lưu ý rằng updatedbphải được chạy như root.
Rafał Cieślak

5
Đây là CÁCH nhanh hơn tìm \ thánh bò ... cảm ơn!
anon58192932

Nếu updatedbthêm /vào chỉ mục theo mặc định, làm thế nào nó vẫn có thể nhanh hơn find /?
Hashim

14

Bắt đầu bằng cách nhấp vào biểu tượng "Thư mục chính" trong trình khởi chạy.

nhập mô tả hình ảnh ở đây

Trong cửa sổ mở ra, nhấp vào "Tìm kiếm".

nhập mô tả hình ảnh ở đây

Nhập những gì bạn muốn tìm kiếm trong hộp, sau đó nhấn enter. nhập mô tả hình ảnh ở đây

Trong danh sách thả xuống cho vị trí, chọn ổ cứng của bạn, sau đó nhấp vào tải lại.

nhập mô tả hình ảnh ở đây

Kết quả sau đó sẽ được hiển thị. Mong rằng sẽ giúp!


3
Người đàn ông hỏi nó nói rằng anh ta sử dụng máy chủ, vì vậy không có GUI. Nhưng dù sao đó cũng là một câu trả lời tuyệt vời!
Rafał Cieślak

8

Nếu bạn đang tìm kiếm một chuỗi bên trong một tệp, bạn có thể sử dụng grep. Đây là một lệnh mẫu:

grep -r -i "some string" /home/yourusername

Điều này sẽ tìm thấy "some string"trong /home/yourusernamethư mục. Việc tìm kiếm sẽ bỏ qua case ( -i) và recurse thư mục ( -r). Bạn có thể sử dụng /làm thư mục để tìm kiếm trong toàn bộ thư mục nhưng điều đó có thể không hiệu quả lắm.


5

Trên Ubuntu, tôi biết rằng mọi người đều muốn giáo điều về việc sử dụng dòng lệnh mọi lúc, và tôi đã từng như vậy, nhưng tôi yêu công cụ "Tìm kiếm tệp ..." của Gnome. Tôi nghĩ nó tuyệt vời.


3
tôi cũng đang ở trên một máy chủ
Blankman

Bạn nên thử sau đó tìm kiếm KDE. Nó là tốt hơn nhiều so với một gnome. Tôi vẫn đang chờ Nautilus bắt kịp với tính linh hoạt mà hệ thống tìm kiếm KDE có. Cá heo / Konqueror tốt hơn nhiều vì nó.
Luis Alvarado

Vâng, tôi đã suy nghĩ về việc chuyển sang Kubfox thực sự. Tôi sẽ xem nó.
djangofan

3

Để thiết lập máy tính để bàn, hãy cài đặt "gnome-search-tool"
sudo apt-get install gnome-search-tool

Đừng cài đặt cái này trong một máy chủ, nó cũng sẽ cài đặt gói máy tính để bàn Ubuntu.
Cảm ơn @Rinzwind đã chỉ ra điều đó.

Bộ lọc bao gồm:

  1. Chọn thư mục bạn muốn tìm kiếm. Trong trường hợp này\
  2. Chứa văn bản - đây là tên tệp.
  3. Ngày Sửa đổi - ít hơn hoặc nhiều hơn số ngày.
  4. Kích thước tệp - ít nhất hoặc nhiều nhất là một kích thước được chỉ định. Bạn cũng có thể tìm kiếm các tập tin trống.
  5. Chủ sở hữu tệp - người dùng, nhóm hoặc chủ sở hữu không được công nhận.
  6. Biểu thức chính quy - khớp với biểu thức chính quy.
  7. Bạn có thể chọn hiển thị các tệp ẩn, theo các liên kết tượng trưng hoặc loại trừ các hệ thống tệp khác.

nhập mô tả hình ảnh ở đây


@Rinzwind Câu hỏi Trying to locate a file, how can I search the entire hard drive for a file?là không có 'cài đặt máy chủ' ở bất cứ đâu ...
Parto

@Rinzwind Hahah. Đẹp một. Hãy để tôi chỉnh sửa câu trả lời của mình và nói rằng đây chỉ dành cho thiết lập máy tính để bàn.
Parto

có một upvote trở lại :)
Rinzwind

2

Nếu bạn không muốn nhớ find(đó là một tham số rất mạnh), bạn có thể cài đặt từ các repos chính thức:

  • kfind - tiện ích tìm kiếm tập tin
  • gnome-search-tool - Công cụ Gnome để tìm kiếm tệp
  • catfish - Công cụ tìm kiếm tập tin có thể cấu hình thông qua dòng lệnh

Ba trong số họ là tuyệt vời, nhưng tôi thấy kfind là tốt nhất.

Từ cộng đồng Ubuntu trợ giúp wiki bạn có thể thấy hữu ích:

  • dpkg -L | --listfiles ... Liệt kê các tệp 'được sở hữu' theo gói.
  • dpkg -S | --search ... Tìm (các) tập tin sở hữu gói.

1

Nếu cần tìm lồng nhau trong một số thư mục:

find / -type f -wholename "*foo/bar/filename"
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.