GNU/Linux >> Tutoriales Linux >  >> Linux

Buscar y copiar archivos

Necesitas usar cp -t /home/shantanu/tosend para decirle que el argumento es el directorio de destino y no una fuente. Luego puede cambiarlo a -exec ... + para obtener cp para copiar tantos archivos como sea posible a la vez.


Si su intención es copiar los archivos encontrados en /home/shantanu/tosend , tienes el orden de los argumentos a cp al revés:

find /home/shantanu/processed/ -name '*2011*.xml' -exec cp "{}" /home/shantanu/tosend  \;

Por favor, tenga en cuenta:el find uso de comando {} como marcador de posición para el archivo coincidente.


Me enfrenté a un problema como este...

En realidad, de dos maneras puedes procesar find salida de comando en copy comando

  1. Si find la salida del comando no contiene ningún espacio, es decir, si el nombre del archivo no contiene espacio, puede usar el comando mencionado a continuación:

    Sintaxis:find <Path> <Conditions> | xargs cp -t <copy file path>

    Ejemplo:find -mtime -1 -type f | xargs cp -t inner/

  2. Pero la mayoría de las veces, nuestros archivos de datos de producción pueden contener espacio. Entonces, la mayor parte del tiempo, el siguiente comando mencionado es más seguro:

    Sintaxis:find <path> <condition> -exec cp '{}' <copy path> \;

    Ejemplo find -mtime -1 -type f -exec cp '{}' inner/ \;

En el segundo ejemplo, la última parte, es decir, el punto y coma también se considera parte de find comando, que debe escaparse antes de presionar el botón enter. De lo contrario obtendrá un error como este

find: missing argument to `-exec'

En su caso, la sintaxis del comando de copia es incorrecta para copiar el archivo de búsqueda en /home/shantanu/tosend . El siguiente comando funcionará:

find /home/shantanu/processed/ -name '*2011*.xml' -exec cp  {} /home/shantanu/tosend \;

Linux
  1. Cómo encontrar archivos de configuración de MySQL, PHP y Apache

  2. Cómo encontrar el número de archivos en un directorio y subdirectorios

  3. Copie archivos con SCP y Rsync

  4. buscar y copiar archivos usando Bash

  5. Encuentre archivos y péguelos (con espacios)

Cómo copiar archivos y directorios en Linux

Buscar comando en Linux (Buscar archivos y directorios)

Encuentra archivos grandes en Linux

Cómo copiar archivos y directorios en Linux

3 formas de encontrar archivos y directorios en Linux

Encuentre archivos y directorios en Linux fácilmente