Tengo un requisito en el que me gustaría omitir la primera línea de la salida de ls -latr "some path"
Dado que necesito eliminar total 136
de la salida a continuación
Entonces escribí ls -latr /home/kjatin1/DT_901_linux//autoInclude/system | tail -q
que excluía la primera línea, pero cuando la carpeta está vacía no la omite. Por favor, dígame cómo omitir la primera línea en cualquier salida de comando de Linux
awk 'NR>1'
sed '1d'
El
tail
programa puede hacer esto:Los
-n +2
medios "comienzan a pasar por la segunda línea de salida".fuente
tail
implementaciones requieren la-n
marca para eso, como entail -n +2
find . -name . -o -ls -prune
, pero eso produce resultados algo diferentes.coreutils
cola, pero ha quedado en desuso y luego se ha eliminado. Ahora obtienestail: cannot open '+2' for reading: No such file or directory
(coreutils 8.7). Lo triste es que otras implementaciones no aceptan-n
...fuente
Esta es una manera rápida hacky:
ls -lart | grep -v ^total
.Básicamente, elimine las líneas que comienzan con "total", que en la
ls
salida solo debería ser la primera línea.Una forma más general (para cualquier cosa):
ls -lart | sed "1 d"
sed "1 d"
significa solo imprimir todo menos la primera línea.fuente
grep
para filtrar esta tarea es peligroso en general; podría coincidir cosas inesperadamente.