El Wed, 31 Mar 2010 19:52:00 +0200, Angel escribió:
On Miércoles, 31 de Marzo de 2010 19:40:55 Camaleón escribió:
Prueba con
extension=$(echo $nombre_archivo | rev | cut -f1 -d'.' | rev)
Pruebo:
sm01@stt008:~$ extension=$(echo archivo.2.5.3.tar.gz | rev | cut -f1 -d'.' | rev); echo $extension gz
¡Grrr! :-)
Claro
¿que esperabas?
Que te hubieras leído el resto de correos del hilo ;-)
según una definición 8.3 "extendida" esa es la extensión.
En Unix no hay extensión propiamente dicha por tanto nunaca podrás detectarla amenos que tengas una tabla de lookup o algo asi
.tar.gz .tgz
son extensiones arbitrarias..
Y son las que busco.
en todo caso sabiendo que sale gz podrías intentar hacer match de .tar pero siempre será una solución de compromiso.
No sale con "gz" siempre.
yo haria:
archivo-XXX.ext1.ext2.tar.gz -> 'gz' 'tar' 'ext2' 'ext1' archivo-XXX y lo pasaria todo a una funcion al que
case $1 in "gz") case "$2" in "tar") esac esac
... y así para unos cuantos casos de interes..
probablemnte llamaria a file para que me dijera de que tipo es el archivo y ahorrarme quebrraderos de cabeza...
Noop, ya está resuelto: nombre completo del archivo. Eso no falla. Saludos, -- Camaleón -- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org