Come posso aprire un file di testo nel mio terminale?

110

C'è un file chiamato RESULTS.txt e voglio aprire questo file nel mio terminale. (Voglio dire, voglio vedere il contenuto del file da mostrare nel terminale e non in un editor di testo)

Come faccio?

    
posta BuZZ-dEE 27.02.2013 - 13:47

16 risposte

137

Per file brevi:

cat <path/your_file>

mostra direttamente un file di testo nel terminale.

Per file più lunghi:

less <path/your_file>

ti consente di scorrere e cercare ( / text to search Invio ) nel file; premi q per uscire.

per es.

cat /home/john/RESULTS.txt
less /home/john/RESULTS.txt
    
risposta data dedunumax 27.02.2013 - 13:59
26

Un'altra alternativa è vim .

vim RESULTS.txt

Una volta aperto un file con vim è possibile inserire del testo digitando i , ad esempio. Se vuoi salvare il tuo file usa :w (write) o :q (quit) o :wq (per write e quit) o :q! (esci e non salvare). A volte è necessario premere il tasto ESC per poter digitare i comandi.

Vim richiede un po 'di apprendimento, ma è ampiamente usato ed è molto versatile.

Controlla la wiki della guida della community: link

  

Vim è un editor di testo avanzato che fornisce il potere di de facto   Editor Unix 'Vi' con un set di funzionalità più completo. Vim è spesso chiamato   un "editor di programmatori" ed è così utile per la programmazione di molti   consideralo un intero IDE. Non è solo per i programmatori, però. Vim   è perfetto per tutti i tipi di modifica del testo, dalla composizione di e-mail a   modifica dei file di configurazione.

    
risposta data Private 27.02.2013 - 13:50
14

tutti questi sono i modi migliori e c'è un altro modo per farlo e & amp; questo è con il comando head .

head -n -1 filename.txt

e

head -n -0 filename.txt

entrambi ti daranno lo stesso input.

Comando capo Spiegazione:

Generalmente comando principale utilizzato per stampare le righe iniziali di qualsiasi file di testo. Possiamo visualizzare il file di testo con

head filename.txt

Questo stamperà le prime 10 righe del file di testo sopra.

Se vuoi specificare il numero di linee che devono essere visualizzate, puoi usare head come

head -n 20 filename.txt

Quindi nel file di testo sopra le prime 20 righe saranno visualizzate.

Se vuoi visualizzare i dati dell'intero file con head vuol dire che possiamo ottenerlo

head -n -0 filename.txt

Spero che questa spiegazione ti dia qualche idea sull'uso della testa.

    
risposta data Jai 28.02.2013 - 16:59
12

Se il file è piuttosto lungo, potresti voler usare

less RESULTS.txt

in modo da poter navigare attraverso di essa con i tasti direzionali.

    
risposta data tvuillemin 28.02.2013 - 07:11
10

Un'altra opzione è:

tail -n 30 result.txt

per stampare le ultime 30 righe di un file di grandi dimensioni chiamato result.txt .

    
risposta data Jool 27.02.2013 - 15:19
7

Un'altra opzione:

tail -f your_file

Ti mostrerà le ultime dieci righe di your_file . Se un processo aggiunge qualcosa a questo file, lo vedi sul tuo terminale. man tail ti dà di più su tail .

È utile vedere cosa succede con un server quando usi questo comando su un file di registro.

Premi Ctrl - C per uscire quando hai finito di vedere.

    
risposta data Luc M 28.02.2013 - 03:31
3

Con un editor di testo terminale: nano /path/to/file/RESULTS.txt

    
risposta data prophecy201 27.02.2013 - 13:17
3

Ci sono molte alternative per farlo:

Alcuni di questi programmi hanno molti parametri, quindi verificalo con --help dopo il comando ..

  • cat filename stampa l'intero file in una sola volta
  • more / less filename comportamento simile per vedere il file nelle parti
  • tail filename inizia a leggere dalla coda del file
  • grep text filename per il filtraggio dei risultati

Spero che alcuni di questi lavori per te ..

    
risposta data kainlite 28.02.2013 - 03:04
2

Un sacco di buone opzioni fornite già qui, ma un'altra opzione se è necessario modificare è emacs:

emacs -nw RESULTS.txt

potrebbe non aver bisogno del -nw , a seconda di Potresti anche dover apt-get install emacs23 o apt-get install emacs24 , oppure se non hai X o non vuoi dipendenze X correlate, apt-get install emacs23-nox o apt-get install emacs24-nox .

E oltre a cat e less come menzionato altrove, c'è more . Più è inferiore, perché vedi una pagina alla volta e non puoi scorrere tramite il comando stesso, ma puoi scorrere con la finestra del terminale, se hai una finestra di terminale a scorrimento:

more RESULTS.txt

Se sei in bash, hai qualcosa di simile a cat eseguendo:

while IFS= read a;do echo "$a";done<RESULTS.txt
    
risposta data Gary S. Weaver 27.02.2013 - 19:44
2

Se vuoi solo leggere il contenuto del file, vai nella directory del file e digita

less RESULTS.txt

Se vuoi leggere e modificare il file di testo, dallo stesso tipo di directory

nano RESULTS.txt

L'interruttore -w nel comando nano può essere inserito prima del nome del file per impedire il wrapping di linee lunghe.

    
risposta data DocKuro 28.02.2013 - 03:40
1

Se è necessario modificare il contenuto del file, io di solito uso nano.

nano filename
    
risposta data Jaison Brooks 27.02.2013 - 19:42
1

o solo

  

vi YourFile

usa i pulsanti hjkl per spostare la linea sinistra / giù / su / destra, Esc poi: q per uscire

e puoi PageUp / PageDown

puoi anche modificarlo qui in modo stropicciato

qui troverai altri link

    
risposta data 4pie0 27.02.2013 - 22:12
1

Anche il programma shell sed ha un'opzione per stampare il contenuto di un file.

sed -n p RESULTS.txt

Quindi sed percorre ogni linea e la stampa sul terminale. Ma sed ha anche capacità di modifica. Ad esempio se vuoi sostituire ogni virgola con un punto puoi scrivere:

sed 's/,/./g' RESULTS.txt
    
risposta data qbi 27.02.2013 - 22:28
1

Poiché sembra che stiamo elencando tutte le alternative disponibili per la visualizzazione di qualsiasi file di testo nel terminale, sarebbe piuttosto divertente introdurre pv come tecnicamente un metodo valido (ma insolito), anche se normalmente userei cat per la maggior parte delle cose.

È nei repository e quindi può essere installato con sudo apt-get install pv se non lo hai già.

Come le note man page , molto spesso viene utilizzato pv a

  

controlla l'avanzamento dei dati attraverso una pipe ... pv copia ogni FILE fornito a sua volta sullo standard output (- significa input standard), o se non vengono specificati file FILE, viene copiato solo l'input standard. Questo è lo stesso comportamento di cat (1).

Con pv puoi letteralmente stampare il file sullo schermo e scegliere il tasso ( -L ) al quale appare. L'esempio seguente utilizza una frequenza elevata (300), ma se scegli una frequenza bassa come -L 50 , apparirà come se il computer stesse digitando il file per te.

pv /etc/apt/sources.list -qL 300

Inutile dire che puoi aumentare ulteriormente la percentuale ( -L 8000 ), e il comando diventa molto simile a cat , con l'output che appare istantaneamente.

Per ulteriori informazioni, consulta man pv o le manpage di Ubuntu online .

    
risposta data Mik 28.02.2013 - 01:22
0

Un'altra risposta più esotica è usare grep :

grep . RESULTS.txt

Il comando grep cerca un carattere nel file e lo stampa. Quindi in pratica viene stampato il file completo.

    
risposta data qbi 27.02.2013 - 22:25
0

Perché no.

Puoi anche usare

most RESULTS.txt

È quasi uguale a less , ma supporta anche lo scorrimento orizzontale se il file contiene linee lunghe - il che è molto utile.

most non è installato di default, quindi per usarlo devi prima

sudo apt install most
    
risposta data Joe 16.08.2018 - 07:39

Leggi altre domande sui tag