ค้นหาข้อความบนเอาต์พุตเทอร์มินัล


33

ฉันใช้งานแอพพลิเคชั่นที่มีคำสั่ง$ grails run-appที่จะพิมพ์เข้าสู่ระบบเทอร์มินัลเหมือนด้านล่าง

search_text_terminal

สิ่งที่ฉันต้องการคือค้นหาข้อความเฉพาะ (พูดuser authorities) ในบันทึกนี้เพื่อให้ฉันสามารถตรวจสอบเพิ่มเติมได้ วิธีหนึ่งในการใช้ Logging Apis เพื่อเขียนไฟล์ข้อความ แต่ฉันต้องการค้นหาในเทอร์มินัลในขณะนี้

ฉันพบคำถามที่คล้ายกันเกี่ยวกับวิธีค้นหาข้อความบนเทอร์มินัลโดยตรงซึ่งแนะนำscreenคำสั่ง แต่ฉันไม่รู้ว่าscreenทำงานอย่างไรในกรณีนี้ ฉันพยายาม $ screen grails run-app แต่ไม่สามารถเดินหน้าต่อไปได้

ฉันสามารถดูรายการหน้าจอด้วย

prayag@prayag:~/zlab/nioc2egdelonk$ screen -list
There is a screen on:
    8076.pts-2.prayag   (10/06/2013 12:13:25 PM)    (Attached)
1 Socket in /var/run/screen/S-prayag.

แต่คุณใช้คำสั่งหน้าจอ แต่ฉันขอแนะนำให้ทิ้งไว้และใช้tmux
PersianGulf

@MohsenPahlevanzadeh แน่นอนว่าฉันจะลองtmuxเช่นกัน ได้ยินมันเยอะมาก
prayagupd

คำตอบ:


23

Ctrl+a( screenคำนำหน้าคำสั่งเริ่มต้น), [(เข้าสู่copyโหมด) ตามด้วย?SEARCH_TEXTดูเหมือนว่าจะทำงาน กดnเพื่อไปยังเหตุการณ์ต่อไป จากตรงนั้นคุณสามารถคัดลอกคำบรรทัดภูมิภาค ฯลฯ เพื่อถ่ายโอนข้อมูลไปยังไฟล์หรือวางในภายหลัง (ด้วยCtrl+a, ])

ป้อนคำอธิบายรูปภาพที่นี่


5
ฉันทำไม่ได้. ดังนั้นคุณต้องกด 3 ปุ่มพร้อมกันหรือไม่ ctrl, a, [?
Capaj

34
ใช้shift+ctrl+f
Ja8zyjits

15

ถ้าคุณใช้Konsole (KDE จำลอง terminal) คุณสามารถใช้Ctrl+ +Shift Fสิ่งนี้อาจใช้ได้ในเทอร์มินัลอีมูเลเตอร์ (Linux) อื่น ๆ

แก้ไข:
@sumit รายงานผลงานนี้ในGnome Terminalด้วย
@vdicarlo รายงานนี้ยังทำงานในXFCE4 ร์มินัล


1
ใช้งานได้ในโปรแกรมจำลองเทอร์มินัล GNOME เช่นกัน
สุมิท

terminatorใช้งานบน ขอบคุณ!
ryanjdillon

8

คุณสามารถใช้grepหลังจากที่คำสั่ง:grails grails run-app | grep "user authorities"อย่างไรก็ตามคุณจะต้องเรียกใช้คำสั่งของคุณอีกครั้ง


3
คำตอบนี้ไม่ควรลงคะแนนถูกต้องแน่นอน
amrx

2
ในขณะที่ถูกต้องจะมีประโยชน์มากกว่าที่จะมีสิ่งที่สามารถทำได้หลังจากพิมพ์ออกไปแล้ว
ลุดวิค

@Baron ฉันค่อนข้างมั่นใจว่าผู้ถามตั้งใจที่จะบอกเป็นนัยว่าคำสั่งนั้นกำลังทำงานอยู่ดังนั้นจึงไม่ตอบคำถาม
ไม่มีใคร


1

เปลี่ยนทิศทางเอาต์พุตของคำสั่งของคุณไปยัง vim-editor: grails run-app | vim -

เคล็ดลับในการค้นหาโดยใช้ Vim:

  • พิมพ์/จากนั้นป้อนสตริงการค้นหาของคุณuser authorities
  • พิมพ์:set hlsearchเพื่อไฮไลต์ผลการค้นหา
  • พิมพ์nเพื่อค้นหาไปข้างหน้าหรือShift+nค้นหาย้อนหลัง
  • จำไว้ว่าตอนนี้คุณอยู่ในโปรแกรมแก้ไขดังนั้นหากคุณทำการเปลี่ยนแปลงโดยไม่ตั้งใจคุณสามารถเปลี่ยนกลับได้เพียงกดESCหนึ่งครั้งเพื่อออกจากโหมดแก้ไขจากนั้นกดuเพื่อเลิกทำการแก้ไขหนึ่งรายการ
  • พิมพ์:q!เพื่อออกจากกลุ่มและทิ้งผลการค้นหาของคุณ
  • คุณสามารถทำสิ่งที่คุณต้องการ :-D http://vim.wikia.com/wiki/Vim_Tips_Wiki

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