¿Cuál es exactamente el problema wcque te impide usarlo?
vanza
55
Realmente no. Los comandos de Unix generalmente están destinados a ser utilizados de esta manera, encadenados en tuberías.
Michael Berkowski
2
Me estoy conectando a través de ssh a otro host para acceder a algunos datos. Desafortunadamente, un montón de comandos básicos no parecen funcionar en este host. Si uso wc, devuelve "comando no reconocido". Entonces estoy buscando otras opciones.
Kantura
77
Usa el treecomando. Le dará el árbol y en la parte inferior le dirá cuántos archivos y directorios hay. Si desea archivos ocultos también use tree -a.
Elijah Lynn
55
@vanza " ¿Cuál es exactamente el problema con wc ", ¿qué pasa si un archivo tiene un \nnombre en el archivo? ¡Sí, extremadamente improbable! Pero sigue siendo técnicamente válido y posible.
JamesThomasMoon1979
Respuestas:
524
este es uno:
ls -l . | egrep -c '^-'
Nota:
ls -1 | wc -l
Lo que significa::
lslistar archivos en dir
-1: (eso es UNO) solo una entrada por línea. Cámbielo a -1a si también quiere archivos ocultos
No, espera . Hice un booboo. Tienes toda la razón, Sajad Lfc. ls -1 dir | egrep -c '' Esto devuelve el número de archivos en dir. Gracias .
Kantura
1
@SajadKaruthedath ls -l . | egrep -c '^-'no cuenta los archivos ocultos. Sugiero agregar -abandera a ls.
JamesThomasMoon1979
1
@ JamesThomasMoon1979: compruebe mi descripción
Sajad Karuthedath
1
Esto muestra un error cuando no hay archivos en la carpeta. Uso ls -1 /dir 2>/dev/null | wc -l. Aquí la salida de ls se dirige a / dev / null y el resultado es un cero limpio
Sathish
66
@runios es porque ls -ldevuelve una línea adicional en la parte superior que suma los tamaños de archivo por un monto total. Debe usar ls -1y no el ls -l. Además, si uno quiere archivos ocultos pero sin los directorios .y ..debe usarlosls -1A | wc -l
wc
que te impide usarlo?tree
comando. Le dará el árbol y en la parte inferior le dirá cuántos archivos y directorios hay. Si desea archivos ocultos también usetree -a
.\n
nombre en el archivo? ¡Sí, extremadamente improbable! Pero sigue siendo técnicamente válido y posible.Respuestas:
este es uno:
Nota:
Lo que significa::
ls
listar archivos en dir-1
: (eso es UNO) solo una entrada por línea. Cámbielo a -1a si también quiere archivos ocultos|
: salida de tubería a ...wc
: "el recuento de palabras"-l
: cuental
ines.fuente
ls -l . | egrep -c '^-'
no cuenta los archivos ocultos. Sugiero agregar-a
bandera als
.ls -1 /dir 2>/dev/null | wc -l
. Aquí la salida de ls se dirige a / dev / null y el resultado es un cero limpiols -l
devuelve una línea adicional en la parte superior que suma los tamaños de archivo por un monto total. Debe usarls -1
y no ells -l
. Además, si uno quiere archivos ocultos pero sin los directorios.
y..
debe usarlosls -1A | wc -l