Debo repetir solo los nombres de archivos o directorios con esta construcción:
ls -Al | while read string
do
...
done
ls -Al
salida:
drwxr-xr-x 12 s162103 studs 12 march 28 12:49 personal domain
drwxr-xr-x 2 s162103 studs 3 march 28 22:32 public_html
drwxr-xr-x 7 s162103 studs 8 march 28 13:59 WebApplication1
Por ejemplo si lo intento:
ls -Al | while read string
do
echo "$string" | awk '{print $9}
done
luego genera solo archivos y directorios sin espacios. Si el archivo o directorio tiene espacios como "dominio personal", será solo la palabra "personal".
Necesito una solución muy simple. Quizás haya una mejor solución que awk.
ls -Al | while
. Una forma simple y más confiable es for string in *; do echo "$string"; done
.
ls
? El análisis ls
y "funciona en todo * nix y no se romperá si algo sucede" no funcionan bien juntos.
ls -Al *' '*
? Analizarls
la salida nunca conduce a nada bueno.