El 27 de junio de 2009 13:03, Pablo Lillia<[email protected]> escribió:
> El 27/06/2009 00:01, [email protected] escribió:
> Un comentario: usar *.* para indicar "todos los archivos" es habitual en
> los sistemas de MS, pero no en unix, donde se usa simplemente un
> asterisco: *
>
> Al indicar *.* estamos seleccionando los archivos que "al menos" tengan
> un punto en su nombre, que pueden no ser todos.
>
> Por ejemplo: si en el directorio tenemos los archivos:
>        uno
>        dos.txt
>        tres.dat
> solo se copiarán los archivos dos.txt y tres.dat. El archivo 'uno' será
> ignorado.
>
> Otro comentario: el cp con --backup copiará TODOS los archivos
> especificados, y aquellos que ya existan en el destino serán renombrados
> como nombreoriginal~ UNA SOLA VEZ. La próxima vez que se repita el
> proceso, se pisará el backup, porque hay 1 único archivo de backup, sin
> secuencias ni timestamp. Si es lo deseado, perfecto.
>
> Igual, si entendí bien lo que quiere Gustavo, es que queden renombrados
> los archivos 'copiados' y no el original del destino. Y esto sería lo
> contrario. Porque renombra al original (de ahí 'backup') y con viejo
> nombre queda el contenido del archivo de origen.
>
> Agregar el parámetro -r si se requiere hacerlo recursivo, para copiar
> también el contenido de los subdirectorios.
>
> No se me ocurre ninguna manera directa de hacerlo, sino probá algo así:
>
> #!/bin/bash
> ORIGEN=~/tmp
> DESTINO=~/kk
> #SUFIJO=".nuevo"
> SUFIJO=".`date +%F.%T`"
> FILES=`ls $ORIGEN/*`
> for F in $FILES
> do
>        FILE_NAME=`basename $F`
>        if [ -f "$DESTINO/$FILE_NAME" ]
>        then
>                echo "Archivo: $FILE_NAME Ya existe"
>                cp $F $DESTINO/$FILE_NAME$SUFIJO
>        else
>                echo "Archivo: $FILE_NAME ES NUEVO"
>                cp $F $DESTINO/$FILE_NAME
>        fi
> done
>
> Guardalo como script, en un archivo por ej cp.sh. Se podría mejorar
> bastante, por ej, pasando origen y destino por parámetros. Lo dejo como
> tarea para el hogar :D.
>
> Tal vez sería interesante comparar los archivos con diff.
>
> Cualquier cosa, una guía rápida de bash:
> http://www.linuxconfig.org/Bash_scripting_Tutorial
>
> Slds.-
> Pablo


Más que interesante tu comentario, muchas gracias.

-- 
Ariel Camino
--
Para desuscribirte tenés que visitar la página
https://listas.linux.org.ar/mailman/listinfo/lugar-gral/

Responder a