ใน Unix“ น้อยกว่า” ฉันสามารถข้ามไปยังบรรทัดถัดไปที่ไม่มี X ได้หรือไม่?


21

ใน Unix lessเครื่องมือก็เป็นไปได้ที่จะข้ามไปยังบรรทัดถัดไปที่ไม่ได้มีการแสดงออกบางอย่าง?

บางครั้งฉันต้องตรวจสอบไฟล์ที่มีบรรทัดที่อยู่ติดกันหลายพันเส้นซึ่งตัวอย่างเช่นทุกคนพูดว่า "การคำนวณบางอย่าง " และฉันสนใจในบรรทัดถัดไปหลังจากบล็อกปัจจุบันซึ่งไม่มีคำว่า "คอมพิวเตอร์"

คำตอบ:


29

ใช่นี่คือฟังก์ชันการค้นหาที่ไม่ตรงกันตัวอย่างเช่น:

less file.conf

จากนั้นคุณพิมพ์/และหลังจากนั้น!บรรทัดสุดท้ายของคุณควรมีลักษณะดังนี้:

Non-match /

จากนั้นพิมพ์รูปแบบของคุณNon-match /^#เพื่อค้นหาบรรทัดแรกโดยไม่ต้องเริ่มต้น#

แทนตัวอักษรที่คุณยังสามารถใช้!Ctrl+N


1
มันสมบูรณ์แบบ ไม่สามารถคาดหวังคำตอบที่ดีกว่านี้ได้
dehmann

4

ในฐานะที่เป็นนอกเหนือไปจากคำตอบของ Casual Coder:

คุณยังสามารถกรองบรรทัดทั้งหมด:

<logfile grep -v mypattern |less 

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


1

ไม่เพียง แต่คุณสามารถกระโดดระหว่างบรรทัดที่ไม่ประกอบด้วย X คุณสามารถซ่อนสายที่ไม่ประกอบด้วย X โดยใช้less's &คำสั่งกรอง regex

less file.conf

แล้วพิมพ์&!^Computingแล้วenterที่สำคัญและทุกบรรทัดเหล่านั้นจะถูกซ่อนจากมุมมอง

/คุณยังสามารถค้นหาภายในบรรทัดที่เหลือด้วย

เมื่อคุณพบบรรทัดที่คุณต้องการคุณสามารถนำคนอื่นกลับมาถ้าคุณต้องการบริบทของพวกเขา - พิมพ์&แล้วenterคีย์เพื่อลบตัวกรอง

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