คำถามติดแท็ก grep

grep เป็นยูทิลิตีบรรทัดคำสั่ง Unix ที่ค้นหาอินพุตสำหรับการจับคู่บรรทัด (หรือไม่) นิพจน์ทั่วไปและพิมพ์ผลลัพธ์ ใช้แท็กนี้สำหรับคำถามเกี่ยวกับวิธีการใช้คุณสมบัติ grep วิธีการเขียนนิพจน์ทั่วไปที่ทำงานกับ grep และการใช้งานทั่วไป เนื่องจาก grep พร้อมใช้งานในสภาพแวดล้อมคล้าย Unix (เช่น Cygwin บน Windows) คุณจึงสามารถใช้แท็กนี้สำหรับคำถามที่เข้ากันได้และความแตกต่างระหว่างรุ่นและสภาพแวดล้อมของซอฟต์แวร์

2
ฉันจะระบุอักขระที่ไม่ใช่ ASCII จากเชลล์ได้อย่างไร
มีวิธีง่ายๆในการพิมพ์ทั้งหมดอักขระที่ไม่ใช่ ASCII และหมายเลขบรรทัดที่พวกเขาเกิดขึ้นในไฟล์โดยใช้อรรถประโยชน์บรรทัดคำสั่งเช่นgrep, awk, perletc? ฉันต้องการเปลี่ยนการเข้ารหัสของไฟล์ข้อความจาก UTF-8 เป็น ASCII แต่ก่อนที่จะทำเช่นนั้นต้องการแทนที่อักขระทั้งหมดที่ไม่ใช่ ASCII ด้วยตนเองเพื่อหลีกเลี่ยงการเปลี่ยนแปลงอักขระที่ไม่คาดคิดซึ่งเกิดขึ้นจากรูทีนการแปลงไฟล์
13 linux  grep  perl  awk  ascii 


9
grep ไฟล์. java ทั้งหมดในไดเรกทอรีสำหรับสตริงเฉพาะ
ฉันจะค้นหาไฟล์. java ทั้งหมดเพื่อหาสตริงแบบง่าย ๆ (ไม่ใช่ regex) ในไดเรกทอรีปัจจุบันและไดเรกทอรีย่อยทั้งหมดใน Mac OS X ได้อย่างไร ฉันแค่ต้องการพิมพ์รายชื่อไฟล์และไดเรกทอรีที่ตรงกัน
12 macos  mac  unix  grep 

3
มีคำสั่งใน Mac OS X ที่สามารถทำการค้นหาหลายบรรทัดได้หรือไม่
ฉันต้องการทำการค้นหา regex แบบง่าย ๆ ซ้ำ ๆ ผ่านไดเรกทอรีที่ไม่ จำกัด บรรทัดเดียว ฉันลอง grep และ ack แต่ดูเหมือนจะไม่สนับสนุนสิ่งนี้ ฉันรู้ว่ามันไม่ควรมีราคาแพงเกินไป (ในกรณีของฉัน) เพราะโปรแกรมแก้ไขข้อความที่ฉันเลือก ( Sublime Text ) สามารถทำได้ดี ฉันแค่มองหาเวอร์ชั่นบรรทัดคำสั่งง่ายๆ Google เปิดใช้งานpcregrepแล้ว แต่ฉันหา Mac ไม่เจอ ฉันแค่มองไม่ถูกที่ใช่ไหม?
12 macos  grep  regex  ack 

1
Grep ไม่เคารพ - ยกเว้น -dir
ฉันมีปัญหาในการค้นหาเนื่องจากการแขวนที่/var /var/runฉันพยายามยกเว้น/var/runแต่ไม่ได้ผลลัพธ์ที่คาดหวัง: $ sudo grep -IR --exclude-dir="/var/run" '45.78.157.165' /var | egrep -v '(audit|access)' /var/log/secure:Jun 21 14:08:34 cryptopp sshd[19729]: error: Received disconnect from 199.91.135.157: 3: com.jcraft.jsch.JSchException: reject HostKey: 45.78.157.165 [preauth] /var/log/secure-20160626:Jun 21 14:08:34 cryptopp sshd[19729]: error: Received disconnect from 199.91.135.157: 3: com.jcraft.jsch.JSchException: reject HostKey: 45.78.157.165 [preauth] /var/log/secure-20160626:Jun 21 14:08:34 cryptopp sshd[19729]: …
12 linux  grep 

1
Regex สำหรับ“ หรือ” ของคำหลายคำใน grep
[Computer]$ grep "foo|bar" filename ฉันเข้าใจว่าคำสั่งดังกล่าวควรกลับแต่ละบรรทัดในชื่อไฟล์ที่มี "foo" หรือ "bar" ออก หน้าคนยืนยัน | ในฐานะ Regex หรือสัญลักษณ์และรหัสใช้งานได้กับ "foo" และ "bar" โดยอิสระ ฉันกำลังคิดถึงอะไร
12 bash  unix  regex  grep 


6
Grep ในไฟล์ที่มีนามสกุลเฉพาะภายใต้ไดเรกทอรี
มีคำสั่งที่อนุญาตให้ค้นหาคำหลักในไฟล์ภายใต้ไดเรกทอรีที่มีนามสกุลเฉพาะหรือไม่ สตริงgrep -irn "string" ./pathจะช่วยให้การค้นหา recursive ./pathสำหรับไฟล์ทั้งหมดภายใต้ไดเรกทอรี ข้อกำหนดเฉพาะของฉันคือค้นหาไฟล์ทั้งหมดภายใต้./pathด้วยส่วนขยายเช่น*.h
11 terminal  search  grep 

1
การค้นหาแบบกว้างแรกด้วย ack หรือ grep
เมื่อฉันค้นหาเช่นไดเรกทอรีบ้านของฉันด้วยack(หรือgrep) ปกติแล้วฉันต้องการทราบว่าฉันได้ตั้งค่าตัวเลือกใด เนื่องจากไฟล์ปรับแต่งส่วนใหญ่ใกล้เคียงกับ~มันมากมันจะเร็วขึ้นackถ้าฉันสามารถค้นหาความกว้างก่อน เป็นไปได้ไหม
11 search  grep  ack 

2
รับบรรทัดที่ปรากฏบ่อยที่สุดจากไฟล์ใน Linux
ฉันมีไฟล์ข้อความที่มีคำต่าง ๆ ต่อบรรทัด ฉันจะค้นหา 12 บรรทัดที่ปรากฏบ่อยที่สุดในไฟล์และแสดงได้อย่างไร? ฉันไม่ค่อยเก่งกับคำสั่งการเขียนสคริปต์ ถ้าฉันสามารถรับคำสั่งและคำอธิบายเพื่อที่ฉันจะสามารถเข้าใจวิธีการใช้และเพิ่มพูนความรู้เกี่ยวกับคำสั่งมันจะยอดเยี่ยมมาก!

10
ฉันจะค้นหาสตริงในไฟล์ PHP โดยใช้ "grep" ได้อย่างไร
ฉันกำลังค้นหาการประกาศคลาสบนไซต์ที่มีไฟล์ PHP หลายร้อยไฟล์ ฉันจะทำสิ่งนี้ในโฟลเดอร์ปัจจุบันและโฟลเดอร์ย่อยโดยใช้grep ได้อย่างไร ฉันทดสอบcdไอเอ็นจีไปยังโฟลเดอร์และจากนั้นสิ่งที่ชอบ grep -r 'class MyClass' *.php
11 linux  grep 

1
ls | grep | rm - วิธีจัดรูปแบบคำสั่งนี้?
ฉันกำลังพยายามลบไฟล์หลายไฟล์ในไดเรกทอรีหนึ่ง (บน Mac OS X โดยใช้ Terminal) ls | grep \([1-9]\) | xargs rm ควรทำเคล็ดลับ แต่ไม่ได้ ฉันกำลังพยายามลบไฟล์ใด ๆ ที่มีตัวเลขหนึ่งหลักในวงเล็บในชื่อไฟล์ (ซ้ำกันที่ดาวน์โหลดจากเว็บ) แต่ท้ายที่สุดก็ทำสิ่งนี้: > rm: 520syllabus2010: No such file or > directory rm: (3).pdf: No such file or > directory เพราะมันแปลพื้นที่ไม่ถูกต้อง ควรลบ "520syllabus2010 (3) .pdf" วิธีที่เหมาะสมในการทำเช่นนี้คืออะไร? ขอบคุณเจฟ
11 grep  ls  rm 

3
ตัวเลือกสีเริ่มต้น grep
grep เป็นหนึ่งในคำสั่งที่ใช้บ่อยที่สุดใน linux ฉันรู้สึกว่ามันเป็นคุณสมบัติพื้นฐานในการเน้นสตริงที่คุณค้นหาในบรรทัดเอาต์พุต สิ่งนี้สามารถทำได้โดย - ตัวเลือกสี การพิมพ์ - ระบายสีทุกครั้งเป็นสิ่งที่น่ารำคาญและไม่เกิดผล มีวิธีใดที่จะเปลี่ยน grep ให้ทำงานเป็น grep --color ฉันพยายามเขียนสคริปต์เล็ก ๆ ชื่อว่าgrepdและเพิ่มลงในตัวแปร PATH ของฉัน แต่การทำงานสคริปต์ไม่ได้เกี่ยวกับการป้อนข้อมูลgrepd ข้อเสนอแนะใด ๆ โปรด #!/bin/bash grep --color $1 $2

5
วิธีการรวม wget และ grep
ฉันมี URL ของหน้า html และฉันต้องการ grep มัน ฉันจะทำโดยได้wget someArgs | grep keywordอย่างไร ความคิดแรกของฉันคือwget -q -O - url | grep keywordแต่เอาท์พุทของ wget ข้าม grep และเกิดขึ้นในอาคารในรูปแบบเดิม
11 grep  wget 

7
Grep ใน Microsoft Word หรือไม่
Grep ใน Microsoft Word หรือไม่ ฉันต้องการดึงทุกบรรทัดด้วยสตริงที่กำหนดจากเอกสารคำ ในโลกยูนิกซ์ ... grep ทำสิ่งนี้โดยไม่ผิดพลาด Windows มีความชัดเจนน้อยกว่าฉัน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.