Tôi muốn tìm tất cả các tệp có chứa một chuỗi văn bản nhất định. Làm thế nào bạn sẽ làm điều đó trong Terminal?
Tôi muốn tìm tất cả các tệp có chứa một chuỗi văn bản nhất định. Làm thế nào bạn sẽ làm điều đó trong Terminal?
Câu trả lời:
grep -r 'text goes here' path_goes_here
man grep
khám phá tất cả các lựa chọn tuyệt vời của grep
No such file or directory
Tôi đang cố gắng để chỉ nhận danh sách các lần xuất hiện văn bản. Làm thế nào chúng ta có thể có được danh sách đó?
grep -lr "text pattern" ./ -s
; grep -lr "text pattern" [PATH OF PARENT] -s
sử dụng đèn sân khấu
mdfind "text goes here"
mdfind -onlyin /home/user/Desktop -live "live update"
đừng quên nhìn vào:
man mdfind
brew install ack
ack "text goes here"
find . |grep "text goes here"
grep -RnslI "text goes here"
Câu trả lời của Ignacio rất hay và giúp tôi tìm các tập tin có chứa văn bản nhất định. Vấn đề duy nhất tôi gặp phải là khi chạy lệnh này, tất cả các tệp sẽ được liệt kê, bao gồm một tệp mà mẫu không hiển thị.
No such file or directory
Đây là những gì tôi thấy bên cạnh các tệp không chứa mẫu.
Nếu thay vào đó bạn thêm -s
vào lệnh, như trong :
grep -lr "text pattern" ./ -s
; grep -lr "text pattern" [PATH DIRECTORY] -s
được sử dụng, nó sẽ chỉ cho bạn thấy tập tin nào chứa mẫu.
Tương tự nếu grep -nr "text pattern" ./ -s
; grep -nr "text pattern" [PATH OF DIRECTORY] -s
lệnh được sử dụng, nó in tệp cộng với số dòng và sự xuất hiện của mẫu.
Xin hãy sửa cho tôi nếu sự hiểu biết của tôi là sai.
Tham khảo: Làm cách nào để grep không in ra 'Không có lỗi tệp hoặc thư mục như vậy?
grep ... 2>/dev/null
. Giải pháp này hoạt động cho hầu hết các chương trình, vì chúng báo cáo các thông báo lỗi trên luồng stderr, không phải thiết bị xuất chuẩn. Tôi đã sử dụng giải pháp này nhiều lần với find
nó, vì nó sẽ cho phép Quyền bị từ chối đối với nhiều tệp.
No such file or directory
tin nhắn cho các tệp tồn tại, hoặc bạn đang làm gì đó sai hoặc hệ thống của bạn bị hỏng. (2) Phải [PATH OF PARENT]
làm gì với bất cứ điều gì?
[PATH OF DIRECTORY]
khi chỉ cần một người không quen biết muốn biết lý do tại sao tôi đã đặt./