Omettendo la prima riga da qualsiasi output di comando Linux


167

Ho un requisito in cui vorrei omettere la prima riga dall'output di ls -latr "some path"Since ho bisogno di rimuovere total 136dall'output di seguito

inserisci qui la descrizione dell'immagine

Così ho scritto ls -latr /home/kjatin1/DT_901_linux//autoInclude/system | tail -qche escludeva la prima riga, ma quando la cartella è vuota non la omette. Per favore, dimmi come omettere la prima riga in qualsiasi output del comando linux

Risposte:



261

Il tailprogramma può fare questo:

ls -lart | tail -n +2

Il -n +2mezzo "inizia a passare attraverso la seconda riga di output".


1
Si noti che alcune tailimplementazioni richiedono il -nflag per questo, come intail -n +2
Mat

Potresti anche usare find . -name . -o -ls -prune, ma questo produce un output leggermente diverso.
Donal Fellows,

@Mat: Così sembra, anche se ha funzionato senza quando ho provato (su OSX).
Donal Fellows,

è abituato a lavorare con coreutilscoda, ma è stato obsoleto, poi rimosso. Ora ottieni tail: cannot open '+2' for reading: No such file or directory(coreutils 8.7). La cosa triste è che altre implementazioni non accettano -n...
Mat,

4
@Mat: alcuni ne hanno bisogno, altri no. Ugh! Uugh ugh ugh ugh! È disgustoso.
Donal Fellows,


20

Questo è un modo rapido hacky: ls -lart | grep -v ^total.

Fondamentalmente, rimuovere tutte le righe che iniziano con "total", che in lsoutput dovrebbe essere solo la prima riga.

Un modo più generale (per qualsiasi cosa):

ls -lart | sed "1 d"

sed "1 d" significa solo stampare tutto tranne la prima riga.


3
L'uso del grepfiltro per questo compito è pericoloso in generale; potrebbe abbinare le cose inaspettatamente.
Donal Fellows,

A volte sì, e penso che non sia la soluzione migliore ... ma quel comando ls porta sempre voci con i permessi della directory. Non è l'ideale poiché grep continua a controllare ogni riga e si comporta diversamente con le altre bandiere.
Jeff Ferland,

1
questa è solo una semantica, ma tecnicamente significa eliminare la prima riga dallo stream.
John Morales,

è meglio che tu non abbia un file con il totale nel suo nome che vuoi sapere
Amias,
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.