problema urgente Shell Script!!!

Saiko9

En el script me piden que copie/borre/liste... ciertos archivos ejecutables, para ello quiero que cada archivo ejecutable sea una variable, a ver si lo entendeis así mejor:

spoiler

El problema está en que no me guarda ninguna variable y me pone siempre:
./practica1.sh: línea 15: fich_1=Descargas: orden no encontrada
./practica1.sh: línea 15: fich_2=Documentos: orden no encontrada
...

que cojones pasa?

B

http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO-7.html

1 respuesta
Saiko9

#2 eso no me lo soluciona que yo sepa xD pero gracias

unhide

Por una parte, todo lo que te montas está muy bien y tal, pero yo lo haría así... Mucho más sencillo y entendible:

#!/bin/bash

ls -lr | grep "^...x" | awk '{print $NF}' > lista;

z=1;

cat lista | while read linea
do
	fichero[${z}]=${linea};
	echo "fichero $z = ${fichero[$z]}";
	z=`expr $z + 1`;
done

En segundo lugar, no puedes crear nombres de variables dinámicos en bash haciendo referencia como haces, a fich_$z. Es eso lo que falla... ;-). Prueba como te puse yo a usar arrays ;-).

1 1 respuesta
Saiko9

#4 Mil gracias, luego lo miro :)

Usuarios habituales