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

สำหรับคำถามเกี่ยวกับ grep เครื่องมือบรรทัดคำสั่งสำหรับค้นหารูปแบบข้อความในไฟล์ ใช้แท็กนี้สำหรับคำถามเกี่ยวกับ grep หรือคำถามเกี่ยวกับปัญหาที่เกิดขึ้นจากการใช้เครื่องมือบรรทัดคำสั่ง grep

3
เหตุใด 'grep -q' จึงใช้ไฟล์อินพุตทั้งหมด
พิจารณาไฟล์อินพุตต่อไปนี้: 1 2 3 4 วิ่ง { grep -q 2; cat; } < infile ไม่พิมพ์อะไรเลย ฉันคาดว่าจะพิมพ์ 3 4 ฉันสามารถรับผลลัพธ์ที่คาดหวังได้หากเปลี่ยนเป็น { sed -n 2q; cat; } < infile เหตุใดคำสั่งแรกไม่พิมพ์ผลลัพธ์ที่ต้องการ มันเป็นไฟล์อินพุตที่หาได้และเป็นไปตามมาตรฐานภายใต้OPTIONS : -q Quiet. Nothing shall be written to the standard output, regardless of matching lines. Exit with zero status if an …
23 grep 

3
grep: แบ็กสแลชต่อท้าย
ฉันต้องการจะทำ grep \resources\สำหรับ ฉันจะทำสิ่งนี้ได้อย่างไร ฉันได้พยายาม: grep \resources\ grep \\resources\\ grep "\resources\" grep "\\resources\\" ไม่มีของเหล่านี้ทำงาน

2
ขอบเขตคำ Grep
เอกสารแนบกับ GNU: ‘\<’ Match the empty string at the beginning of word. ‘\>’ Match the empty string at the end of word. / etc / fstab ของฉันมีลักษณะเช่นนี้: /dev/sdb1 /media/fresh ext2 defaults 0 0 ฉันต้องการให้ grep คืนค่า TRUE / FALSE สำหรับการมีอยู่ของ / media / fresh ผมพยายามที่จะใช้\<และ\>แต่มันก็ไม่ได้ทำงาน ทำไม? egrep '\</media/fresh\>' /etc/fstab การแก้ปัญหา: …

5
จะค้นหาพา ธ ของไฟล์ตามชื่อไฟล์ได้อย่างไร?
ฉันพยายามค้นหาsettings.xmlไฟล์ในเครื่อง Ubuntu ของฉัน ฉันไม่รู้ว่ามันอยู่ที่ไหนและอยู่ในไดเรกทอรีไหน ฉันลองใช้มัน - ls -R | grep settings.xml แต่มันไม่ได้แสดงเส้นทางแบบเต็มให้ฉันเห็น .. มีคำสั่งอื่นอีกไหมที่ฉันต้องลองซึ่งสามารถให้เส้นทางแบบเต็มกับฉันได้หรือไม่
22 grep  find 

4
คุณจะย้าย (หรือคัดลอก) ไฟล์บางประเภทไปยังไดเรกทอรีใน Unix ได้อย่างไร?
ฉันยังไม่คุ้นเคยกับกลอุบายของทั้งหมดgrep/find/awk/xargsเลย *.xxxฉันมีบางไฟล์ที่ตรงกับรูปแบบโดยเฉพาะอย่างยิ่งกล่าวว่า ไฟล์เหล่านี้อยู่ในตำแหน่งสุ่มทั่วทั้งไดเรกทอรี ฉันจะค้นหาไฟล์ดังกล่าวทั้งหมดและย้ายไฟล์ไปยังโฟลเดอร์ในโฮมไดเร็กตอรี่ของฉันบน Unix (อาจยังไม่มีอยู่)?
22 grep  rename  file-copy 

3
ค้นหาสตริงในไฟล์ zip หลายไฟล์
ฉันกำลังทำงานกับ SunOS 5.10 ฉันมีโฟลเดอร์ที่มีไฟล์ zip ประมาณ 200 ไฟล์ ไฟล์ซิปแต่ละไฟล์มีไฟล์ข้อความเดียวเท่านั้น ฉันต้องการค้นหาสตริงเฉพาะในไฟล์ข้อความทั้งหมดในไฟล์ zip ทั้งหมด ฉันลองสิ่งนี้ (ซึ่งค้นหาไฟล์ข้อความใด ๆ ในไฟล์ zip ที่มีสตริง "ORA-") แต่มันไม่ทำงาน zipgrep ORA-1680 *.zip อะไรที่ถูกต้องในการทำโดยไม่คลายการบีบอัดไฟล์ zip?
22 grep  solaris  search  zip 

2
ยกเว้นไดเรกทอรีย่อยที่ซ่อนอยู่จาก grep -r
ฉันมีสำเนาโลคอล svn ฉันต้องการค้นหาสตริง some_string $ grep some_string * -r lang/en:some_string=Some string lang/.svn/en:some_string=Some string แต่ถ้าไปไกลกว่านั้นดูเหมือนว่าไดเรกทอรีระดับแรกจะถูกยกเว้น: $ cd lang && grep some_string * -r en:some_string=Some string ฉันจะลบ diretories svn ที่ซ่อนอยู่ออกจากผลลัพธ์ของฉันได้อย่างไรและไม่เพียง แต่จากระดับความลึกแรก $ grep some_string * -r --which_option_here? lang/en:some_string=Some string
22 grep  recursive 

5
มีวิธีที่ง่ายกว่าในการ grep ไฟล์ทั้งหมดภายใต้ไดเรกทอรีหรือไม่?
เมื่อฉันต้องการค้นหาเนื้อหาทั้งหมดฉันจะใช้ต้นไม้ find . -type f -print0 | xargs -0 grep <search_string> มีวิธีที่ดีกว่าในการทำเช่นนี้ในแง่ของประสิทธิภาพหรือความกะทัดรัด?
21 grep  find 


8
วิธีใช้ grep และ cut in script เพื่อรับ URL เว็บไซต์จากไฟล์ HTML
ฉันกำลังพยายามใช้ grep และตัดเพื่อแยก URL จากไฟล์ HTML ลิงค์มีลักษณะดังนี้: <a href="http://examplewebsite.com/"> เว็บไซต์อื่น ๆ ที่มี.net, แต่ฉันคิดว่าฉันจะให้ตัดออกจากจุดที่เหมาะสมก่อน.gov >ดังนั้นฉันรู้ว่าฉันสามารถใช้ grep และตัดเพื่อตัดทุกอย่างก่อน http และหลัง. com แต่ฉันติดอยู่ในขณะนี้

13
ฉันจะลบความคิดเห็นทั้งหมดจากไฟล์ได้อย่างไร
ฉันมีไฟล์ที่มีความคิดเห็น: foo bar stuff #Do not show this... morestuff evenmorestuff#Or this ฉันแค่ต้องการพิมพ์รหัสที่ไม่ใส่เครื่องหมายทั้งหมด: foo bar stuff morestuff evenmorestuff ความสามารถในการตัดความคิดเห็นออกจากไฟล์เป็นสิ่งสำคัญ ... วิธีการที่ดีคืออะไร

2
ฉันจะใช้ grep เพื่อค้นหาไดเรกทอรีที่ไม่ได้จัดอันดับได้อย่างไร
อาจดูเหมือนว่าฉันกำลังถามสิ่งเดียวกันกับคำถามนี้แต่ฉันมีข้อกำหนดที่แตกต่างกัน นี่คือตัวอย่างของระบบไฟล์ของฉัน: /รหัส/ ภายใน/ dev / หลัก/ / ประชาชน dev / หลัก/ ปล่อย/ เครื่องมือ / /code/internal/dev/, /code/public/dev/และ/code/tools/มีไดเรกทอรีย่อยหลายโครงการ ฉันทำงานเกือบเฉพาะในสาขา dev /code/internal/และ/code/public/และบ่อยครั้งที่ฉันต้องการค้นหาสตริงข้อความในไดเรกทอรีเหล่านั้นพร้อมกับ/code/tools/(ซึ่งไม่มีสาขา) ในกรณีเหล่านี้ฉันต้องทำสามคำสั่งแยกกัน: $ grep -r "some string" /code/internal/dev/ $ grep -r "some string" /code/public/dev/ $ grep -r "some string" /code/tools/ ฉันต้องการทราบว่ามีคำสั่งเดียวในการทำเช่นนี้หรือไม่ ถ้าไม่ฉันจะต้องเขียนสคริปต์ทุบตีง่ายที่สุด
21 grep  search 

1
Grep ช้าที่จะออกหลังจากพบการแข่งขัน?
ฉันกำลังพยายามเขียนสคริปต์ทุบตีที่สำรวจ btmon สำหรับการเชื่อมต่ออุปกรณ์ ฉันมีวิธีแก้ปัญหาการทำงาน แต่มันช้าอย่างไร้เหตุผลและดูเหมือนว่าปัญหาคือ grep ช้ามากที่จะออกหลังจากพบการแข่งขัน (ประมาณ 25 วินาที) ฉันจะทำอย่างไรเพื่อเร่งความเร็วgrepหรือหลีกเลี่ยงการใช้งานพร้อมกัน? #!/bin/bash COUNTER=0 while : do until btmon | grep -m 1 '@ Device Connected' do : done let COUNTER=COUNTER+1 echo on 0 | cec-client RPI -s -d 1 sleep 5 echo as | cec-client RPI -s -d 1 until …
20 bash  grep 

9
grepping สตริงคงที่ที่จุดเริ่มต้นของบรรทัด
grep "^$1"การเรียงลำดับของงาน แต่ฉันจะหลบหนี"$1"เพื่อ grep ไม่ตีความตัวละครใด ๆ ในนั้นเป็นพิเศษได้อย่างไร หรือมีวิธีที่ดีกว่า แก้ไข: ฉันไม่ต้องการค้นหา'^$1'แต่สำหรับสตริงคงที่ที่แทรกแบบไดนามิกซึ่งควรจับคู่ก็ต่อเมื่อเป็นจุดเริ่มต้นของบรรทัด $1นั่นคือสิ่งที่ฉันหมายถึงโดย
20 grep 

6
การค้นหาแบบเรียกซ้ำไม่ทำงานสำหรับ grep บน solaris
Solaris บนเซิร์ฟเวอร์ของเราฉันพบว่าไม่ทำงานซึ่งเป็นวิธีการปกติที่ผมใช้grep -r grepดูเหมือนว่าegrepจะมีพฤติกรรมเหมือนกัน เนื่องจากฉันไม่สามารถควบคุมเครื่องได้มีวิธีgrepทำการค้นหาแบบเรียกซ้ำหรือไม่? หรือฉันจะต้องท่อส่งออกของfindเข้ามาgrep?

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