cerca testo sull'uscita del terminale


33

Sto eseguendo un'applicazione con comando $ grails run-appche stampa il terminale di accesso come di seguito.

search_text_terminal

Quello che voglio è cercare un particolare testo (diciamo user authorities) in questo registro in modo da poter verificare ulteriormente. In un modo usando Logging Apis per scrivere in un file di testo, ma al momento voglio cercarlo in un terminale.

Ho trovato una domanda simile su come rendere la ricerca un testo direttamente sul terminale che suggerisce il screencomando, ma non ho idea di come screenfunzioni in questo caso. Ho provato $ screen grails run-app ma non sono riuscito ad andare avanti.

Posso vedere gli elenchi di schermate con

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.

comunque usi il comando schermo, ma ti consiglio di lasciarlo e usaretmux
PersianGulf

@MohsenPahlevanzadeh, sicuramente ci proverò tmuxanche io . Ne ho sentito parlare molto.
prayagupd,

Risposte:


23

Ctrl+a( screenprefisso comando predefinito ), [( copymodalità invio) seguito da ?SEARCH_TEXTsembra funzionare. Premere nper passare alla ricorrenza successiva. Da lì, puoi copiare parole, linee, regioni, ecc. Per scaricare in file o incollarli in seguito (con Ctrl+a, ]).

inserisci qui la descrizione dell'immagine


5
Non posso farlo. Quindi devi premere 3 tasti contemporaneamente? ctrl, a, [?
Capaj,

34
usoshift+ctrl+f
Ja8zyjits

15

Se usi Konsole (emulatore di terminale KDE), puoi usare Ctrl+ Shift+ F. Questo potrebbe funzionare anche con altri emulatori di terminale (Linux).

Modifica:
@sumit segnala che funziona anche in Gnome Terminal .
@vdicarlo segnala che funziona anche nel terminale XFCE4 .


1
Funziona anche nell'emulatore di terminale GNOME.
Sumit

Funziona su terminator. Grazie!
ryanjdillon,

8

È possibile utilizzare grepdopo il grailscomando: grails run-app | grep "user authorities". Tuttavia, dovrai eseguire nuovamente il tuo comando.


3
Questa risposta non dovrebbe essere annullata, è assolutamente corretta.
amrx,

2
Sebbene sia corretto, è più utile avere qualcosa da fare dopo che l'output è già stato stampato.
Ludwik,

@Baron Sono anche abbastanza sicuro che l'assessore intendesse implicare che il comando è già in esecuzione, quindi questo non risponde alla domanda.
Nessuno il


1

Reindirizza l'output del tuo comando su vim-editor: grails run-app | vim -

Diversi consigli per la ricerca con Vim:

  • digitare /quindi inserire la stringa di ricercauser authorities
  • digitare :set hlsearchper evidenziare i risultati della ricerca
  • digitare nper cercare in avanti o Shift+nper cercare all'indietro
  • ricorda che ora sei nell'editor, quindi se hai apportato alcune modifiche per errore puoi ripristinare, basta premere ESCuna volta per uscire dalla modalità modifica, quindi premere uper annullare una modifica
  • digitare :q!per uscire da Vim e scartare i risultati della ricerca
  • puoi fare quello che vuoi :-D http://vim.wikia.com/wiki/Vim_Tips_Wiki

imparato qualcosa!
oneindelijk
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.