Cancella terminale mentre il processo attivo sta emettendo contenuti


0

Diciamo che sto eseguendo uno script che produce molti contenuti. A metà strada voglio cancellare l'output in modo che se scorro verso l'alto, vedo solo l'output creato dopo quel punto.

Sul terminale Mac OS X, posso semplicemente usare Command-K ma non sembra esserci un equivalente per il terminale Ubuntu.

Ecco cosa ho trovato:

  • clear && echo -en "\e[3]"invia un reset e cancella l'intera finestra, ma ciò richiede che io abbia accesso al prompt di bash
  • Control-L cancella il contenuto corrente ma non sembra funzionare mentre è in corso un processo e scorre solo la finestra verso il basso e non cancella il contenuto precedente.

Attualmente sto usando il terminale predefinito incluso con l'installazione del sottosistema Windows Ubuntu. Esiste un comando che posso inviare al terminale che reimposta forzatamente tutto?

In alternativa, esiste un terminale di terze parti che supporta questo - idealmente uno che offre anche altri vantaggi come le schede e una migliore copia / incolla del testo?


Cosa intendi con "il terminale Ubuntu"? È vero gnome-terminal? konsole? xterm? o cosa vedi dopo Ctrl + Alt + F1? Ad ogni modo, dopo aver scoperto quali tty o pts il processo utilizza per output ( readlink /proc/<PID>/fd/1), è possibile fare come clear > /dev/pts/2da un'altra console per influenzarlo. Questo è il modo Unix in cui "tutto è un file"; Non so se qualcosa di simile funzioni nel sottosistema Windows per Linux.
Kamil Maciorowski il

Risposte:


-1

Sembra che il problema è che alcuni comandi / script è l'output di un po 'di cose che non si cura di alcune cose e si fa interessano.

Non so abbastanza su Windows per rispondere a "Come cancellare una sessione terminale con una sequenza di tasti", ma conosco abbastanza su Linux in generale per dare alcuni suggerimenti su "Come rendere l'output più leggibile".

Hai considerato i seguenti modi "standard linux" per risolvere quel problema?

A) Registrazione dell'uscita

your_command >> output.txt

Questo rende l'output più permanente, puoi anche creare output1.txt, output2.txt, ecc. E vedere se alcune modifiche stanno facendo quello che vuoi.

L' >>operatore in bash cambierà l'output del comando / script dalla console in un file nella directory in cui stai lavorando. (Puoi anche specificare un percorso se lo desideri in qualche luogo specifico)

Meglio ancora, se hai scritto o puoi modificare lo script, puoi impostare la registrazione nello script per organizzare l'output in file pertinenti con nomi di file con data e ora ecc.

B) Tubazione dell'uscita

your_command | less

Questo è meglio se non prevedi di dover fare riferimento a più "versioni" dell'output e non ti aspetti di voler conoscere l'output in futuro.

Mentre sei nel programma meno, puoi saltare al testo che ti interessa. (Cerca in meno è /il termine di ricerca)

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.