Meno non è solo di più?


45

Quando lo faccio more filenamee less filename, sembrerebbe che i terminali risultanti siano abbastanza simili. Posso navigare e cercare attraverso i miei file in modo identico ( j, Space, /pattern, etc.).

Trovo difficile credere che lessè more, e viceversa. Ci sono differenze tra i due?


36
lessè maggiore di more, maggiore o minore, moreminore di less. ;-)
Alan Haggai Alavi il

3
@AlanHaggaiAlavi - Questo è un vero scioglilingua che hai lì: D
Kent Pawar,

3
@AlanHaggaiAlavi Dovrebbe essere una risposta. :)
Tripp Kinetics,

Questo dipende da cosa viene usato Unix. Su alcuni, lesse moresono gli stessi eseguibili, mentre su altri sono diversi.
Kusalananda

Risposte:


52

La differenza è per lo più storica a questo punto, credo che alcuni sistemi abbiano moree siano lesscollegati allo stesso binario.

In origine, morepraticamente permettevi solo di andare avanti in un file, ma era abbastanza decente per il buffering dell'output.

lessè stato scritto come un miglioramento moreche ti ha permesso di scorrere il testo visualizzato

La prima riga del mio man lesspraticamente riassume:

Less is a program similar to more, but which allows backward 
movement in the file as well as forward movement. 

@jkerian: ricerca di testo e buffering a parte, potresti mostrare un esempio pratico di dove questi due differiscono in termini di implementazione dei comandi?
Zaid,

14
Non vedo che è storico, non ho mai visto un "altro" che ti ha permesso di muoverti in entrambe le direzioni. puoi solo andare avanti in più. il punto storico sarebbe che più è stato scritto prima di meno, che significa "vedi più di 1 pagina" e il nome di comando di less è più uno scherzo su meno è più e più è meno, in pratica dicendo che meno potrebbe fare di più.
xenoterracide,

1
Ho un sistema Solaris 10 qui in cui moreagisce come il vecchio stile more--- non puoi tornare indietro di una pagina. Ed è il PAGER predefinito. Mi fa impazzire ...
Stefan Lasiewski il

1
Quindi, in altre parole, sono i sistemi basati su FreeBSD (forse tutti BSD?) ... poiché OS X è basato su FreeBSD ... @Stefan La shell predefinita di Solaris senza il completamento delle schede (abilitato?) Mi ha fatto impazzire.
xenoterracide,

7
Più o meno la risposta corretta.
inverti il

25

lessè molto più di more, ad esempio hai molte più funzionalità:

g: vai all'inizio del file
G: vai in fondo al file
/: ricerca in avanti
?: cerca all'indietro
N: mostra il numero di riga
: goto line
F: simile a tail -f, stop con ctrl + c
S: linee di divisione

E non ricordo più ;-)


3
h: tutto ciò che non ricordi;)
törzsmókus,

9

Oltre alle funzionalità extra già menzionate in less, ha anche un vcomando che apre il file corrente nella vistessa posizione. Quando esci vi, tornerai lesscon il file (eventualmente aggiornato) mostrato.


1
Quando moreè interattivo, anche questo può iniziare vipremendo v.
Troubadour

4

Ci sono un paio di cose che faccio tutto il tempo less, in cui non funziona more(almeno le versioni sui sistemi che uso. Uno sta usando Gper andare alla fine del file e gper andare all'inizio. Questo è utile per i file di registro, quando stai cercando voci recenti alla fine del file. L'altro è la ricerca, dove lessevidenzia la corrispondenza, mentre moreti porta semplicemente alla sezione del file in cui si verifica la corrispondenza, ma non lo fa indica dove si trova.


3

Meno ha molte più funzionalità.

Puoi usare vper saltare all'attuale $ EDITOR. È possibile convertire in modalità tail -f con fcosì come tutti gli altri suggerimenti offerti da altri.


3

Ubuntu ha ancora distinti meno / più bin. Almeno il mio, o il morecomando sta inviando diversi argomenti a meno.

In ogni caso, per vedere la differenza, trova un file con più righe di quelle che puoi vedere contemporaneamente nel tuo terminale. Digita cat, quindi il nome del file. Dump semplicemente l'intero file. Digita more, quindi il nome del file. Se su Ubuntu, o almeno la mia versione (9.10), vedrai la prima schermata, quindi --More--(27%), il che significa che c'è di più nel file e finora hai visto il 27%. Premi lo spazio per vedere la pagina successiva. lessconsente di spostarsi riga per riga, avanti e indietro, oltre alla ricerca e tutta una serie di altre cose.

Fondamentalmente, usa less. Probabilmente non avrai mai bisogno moredi nulla. Ho usato lessfile di grandi dimensioni e sembra OK. Non penso che faccia cose folli come caricare tutto in memoria ( Blocco note per la tosse ). La visualizzazione dei numeri di riga potrebbe richiedere del tempo, tuttavia, con file di grandi dimensioni.


1
Il motivo per cui si vede questo comportamento è che uno dei parametri che un programma ottiene all'avvio è il nome da cui è stato chiamato. Se prendi il binario "less" e lo copi o lo colleghi a "more", eseguendolo attraverso "more" cambia il suo comportamento perché sa che dovrebbe essere eseguito in modalità compatibilità. In realtà c'è un bel po 'di questo in un moderno sistema Unixy. Su alcuni sistemi, ad esempio, mv, cp e rm sono tutti uguali binari, cambiando solo il comportamento a seconda di come è stato chiamato. Un esempio estremo di questo è il progetto Busybox, popolare nei Linux embedded.
Warren Young,

Le dimensioni del file per / bin / more e / bin / less sono diverse e ognuna mostra un singolo hardlink (la colonna contiene a 1).
Stefan Lasiewski,

2

Almeno sui sistemi che ho usato:

  • more esce automaticamente quando si raggiunge la fine del file
  • less richiede di uscire esplicitamente.

1

Inoltre, meno può visualizzare il file compresso / compresso, più non può farlo.

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.