ฉันต้องการค้นหาไฟล์ทั้งหมดที่มีสตริงข้อความที่แน่นอน คุณจะทำสิ่งนั้นใน Terminal อย่างไร
ฉันต้องการค้นหาไฟล์ทั้งหมดที่มีสตริงข้อความที่แน่นอน คุณจะทำสิ่งนั้นใน Terminal อย่างไร
คำตอบ:
grep -r 'text goes here' path_goes_here
man grep
ให้ค้นพบตัวเลือกที่ยอดเยี่ยมทั้งหมดของ grep
No such file or directory
ฉันกำลังพยายามหารายการข้อความที่เกิดขึ้น เราจะรับรายชื่อนั้นได้อย่างไร?
grep -lr "text pattern" ./ -s
; grep -lr "text pattern" [PATH OF PARENT] -s
ใช้สปอตไลท์
mdfind "text goes here"
mdfind -onlyin /home/user/Desktop -live "live update"
อย่าลืมดู:
man mdfind
brew install ack
ack "text goes here"
find . |grep "text goes here"
grep -RnslI "text goes here"
คุณสามารถเลือกหนึ่งในด้านล่างขึ้นอยู่กับรสนิยมและความต้องการของคุณ หากว่าคุณต้องการค้นหาไฟล์ที่มีข้อความ - "async" ซึ่งเรียกซ้ำในไดเรกทอรีปัจจุบันคุณสามารถทำได้ด้วยวิธีใดวิธีหนึ่งดังนี้:
คำตอบของ Ignacio นั้นยอดเยี่ยมมากและช่วยฉันค้นหาไฟล์ที่มีข้อความบางอย่าง ปัญหาเดียวที่ฉันพบคือเมื่อเรียกใช้คำสั่งนี้ไฟล์ทั้งหมดจะปรากฏในรายการรวมถึงสิ่งที่รูปแบบไม่ปรากฏขึ้น
No such file or directory
นี่คือสิ่งที่ฉันเห็นข้างๆไฟล์ที่ไม่มีรูปแบบ
ถ้าคุณเพิ่ม-s
คำสั่งแทน, ใน:
grep -lr "text pattern" ./ -s
; grep -lr "text pattern" [PATH DIRECTORY] -s
ใช้แล้วมันจะแสดงเฉพาะไฟล์ที่มีรูปแบบ
ในทำนองเดียวกันถ้าgrep -nr "text pattern" ./ -s
; grep -nr "text pattern" [PATH OF DIRECTORY] -s
คำสั่งจะใช้มันพิมพ์ไฟล์รวมทั้งหมายเลขบรรทัดและการเกิดขึ้นของรูปแบบ
โปรดแก้ไขฉันหากความเข้าใจของฉันไม่ถูกต้อง
การอ้างอิง: ฉันจะมี grep ไม่พิมพ์ข้อผิดพลาด 'ไม่มีไฟล์หรือไดเรกทอรีดังกล่าวได้อย่างไร?
grep ... 2>/dev/null
. โซลูชันนี้ใช้ได้กับโปรแกรมส่วนใหญ่เนื่องจากรายงานข้อผิดพลาดในสตรีม stderr ไม่ใช่ stdout ฉันใช้วิธีนี้หลายครั้งด้วยfind
กันเพราะจะบอกว่าPermission ถูกปฏิเสธสำหรับหลาย ๆ ไฟล์
No such file or directory
ข้อความไฟล์ที่มีอยู่แสดงว่าคุณกำลังทำอะไรผิดพลาดหรือระบบของคุณเสีย (2) สิ่งใด[PATH OF PARENT]
เกี่ยวข้องกับอะไรบ้าง?
[PATH OF DIRECTORY]
มีใครบางคนที่ไม่คุ้นเคยอยากรู้ว่าทำไมฉันถึงได้./