una ¿Cómo listar archivos en el directorio usando bash?




scripts bash ejemplos (3)

Para listar archivos regulares en /my/sourcedir/ , sin buscar recursivamente en subdirectorios:

find /my/sourcedir/ -type f -maxdepth 1

Para copiar estos archivos a /my/destination/ :

find /my/sourcedir/ -type f -maxdepth 1 -exec cp {} /my/destination/ \;

¿Cómo copiar solo los archivos normales en un directorio (ignorando subdirectorios y enlaces) al mismo destino? (bash en Linux) Una gran cantidad de archivos


for file in /source/directory/*
do
    if [[ -f $file ]]; then
        #copy stuff ....
    fi
done

Para ampliar la respuesta de poplitea , no tiene que ejecutar cp para cada archivo: use xargs para copiar varios archivos a la vez:

find /my/sourcedir -maxdepth 1 -type f -print0 | xargs -0 cp -t /my/destination

o

find /my/sourcedir -maxdepth 1 -type f -exec cp -t /my/destination '{}' +




bash