![]() |
Hola y bienvenida de los Estados Unidos a la UNIX y Linux Foros! Gracias por su visita y formar parte de nuestra comunidad global.
|
|
google unix.com
|
|||||||
| Foros | Registro | Reglas de los Foros | Enlaces | Álbumes | Preguntas más frecuentes | Lista de miembros | Calendario | Búsqueda | Puestos de hoy | Marcar Foros Como Leídos |
| Programación de scripts de shell y Plantear preguntas sobre KSH, CSH, SH, BASH, PERL, PHP, SED, AWK y otros scripts de shell y lenguajes de script de shell aquí. |
Más UNIX y Linux Foro Temas usted puede encontrar útiles
|
||||
| Hilo | Hilo para principiantes | Foro | Respuestas | Último mensaje |
| la creación de directorios en el mismo cuadro | vivek_damodaran | HP-UX | 3 | 11-14-2007 03:06 PM |
| Tar y moviendo los directorios | stocksj | Sun Solaris | 2 | 11-13-2007 11:33 AM |
| moviendo a los nuevos directorios de directorios en múltiples servidores | mackdaddy07 | Programación de scripts de shell y | 0 | 04-06-2007 11:30 am |
| bash / awk ayuda de secuencias de comandos (ANTIGUO crear nuevos usuarios) | Jukai | Programación de scripts de shell y | 2 | 10-17-2006 05:36 AM |
| la creación de directorios | carlvernon | UNIX for Dummies Preguntas y Respuestas | 3 | 06-01-2006 01:45 PM |
![]() |
|
|
Linkback vínculo | Herramientas de hilo | Buscar en este Hilo | Tasa de Hilo | Modos de visualización |
|
|
|
||||
|
Bueno, su trabajo (para los que por ahí que tropiezan en este sitio para la misma secuencia de comandos)
No es elegante, sana o de otro tipo ... pero funciona. Si la mejor experiencia aquí puede limpiarlo y resolver el elegante / cuerdo cuestiones entonces sería una gran ![]() Código:
#!/bin/bash -x
for file in *.jpg; do
YY=`echo $file | awk '{split($0,a,""); print a[1]a[2]}'`
MM=`echo $file | awk '{split($0,a,""); print a[3]a[4]}'`
DD=`echo $file | awk '{split($0,a,""); print a[5]a[6]}'`
HH=`echo $file | awk '{split($0,a,""); print a[7]a[8]}'`
if [ -d $YY ]
then
if [ -d $YY/$MM ]
then
if [ -d $YY/$MM/$DD ]
then
if [ -d $YY/$MM/$DD/$HH ]
then
mv $YY$MM$DD$HH*.jpg $YY/$MM/$DD/$HH
else
mkdir $YY/$MM/$DD/$HH
fi
else
mkdir $YY/$MM/$DD
fi
else
mkdir $YY/$MM
fi
else
mkdir $YY
fi
done
|
|
||||
|
Shorther:
Código:
for i in *.jpg;do d=${i:0:8};test -d $d || mkdir $d ;mv $i $d;done
|
|
||||
|
Cita:
En lugar de un solo directorio 08072511 necesito anidadas como > 08 -> 07 -> 25 ---> 11 |
|
||||
|
Ops, la lectura rápida
![]() Código:
for i in *.jpg;do d=.$(sed 's/\(..\)/\/\1/g' <<< ${i:0:8});test -d $d || mkdir -p $d ;mv $i $d;done
Código:
$ uname -a Linux test 2.6.18-6-686 #1 SMP Sun Feb 10 22:11:31 UTC 2008 i686 GNU/Linux Última edición por danmero; al 07-24-2008 10:22 PM.. |
![]() |
| Marcadores |
| Herramientas de hilo | Buscar en este Hilo |
| Modos de visualización | Vota a este hilo |
|
|