Copiar archivos por línea de comando

Imagen de Davispunk
0 puntos

Buenas,

Quisiera saber como copiar archivos por comando dando expresiones como que tengas 6 caracteres y que terminen en "a". Se que para copiar se usa cp pero nose como poner las expresiones.

Un saludo y gracias

Imagen de Gabriel_M
+1
0
-1

Ejecutando en consola:
man cp
Sabrás todos sus parámetros

El comando cp en Gnu/Linux, también conocido como copy, es un comando UNIX que como su propio nombre indica, se utiliza para copiar archivos.
Al utilizar el comando cp en Gnu/Linux, losarchivos pueden ser copiados al mismo directorio o por el contrario a un directorio diferente. Si el archivo va a ser copiado al mismo directorio donde existe el archivo original, el nuevo archivo debe tener un nombre diferente.
Si queremos copiar un farchivo a otro archivo del mismo directorio utilizando el comando cp en Linux:

cp [opciones] archivoorigen archivodestino

Opciones del comando cp en Gnu/Linux:

Backup:
-b
Crea un backup en el destino en el caso en el que exista un archivo llamado igual que el que queremos generar.

Force:
-f
Fuerza el borrado de los archivos destino sin consultar o avisar al usuario.

Interactive:
-i
Informa antes de sobrescribir un archivo en el destino indicado.

Link:
-l
Realiza un link en vez de copiar los archuivos.

Preserve:
-p
Realiza la copia de los archivos y directorios conservando la fecha de modificación de los archivos y carpetas originales.

Copia recursiva:
-r
Copia de forma recursiva.

Suffix:
-S SUFFIX
Añade la palabra “SUFFIX” (o la palabra que le indiquemos, por ejemplo BACKUP) a los archivos de backup creados con el flag “–b”.

Update:
-u
El comando cp en Linux no copia un archivo o directorio a un destino si este destino tiene la misma fecha de modificación o una fecha de modificación posterior comparándola con el archivo o directorio que queremos mover.

Verbose:
-v
Muestra lo que se está ejecutando.

+1
0
-1
Imagen de AgD
+1
0
-1

Lo que quieres se llaman expresiones, las básicas se construyen usando ?, * y [ ]. Las complejas precisan activar la opción etxglob de bash con el comando shopt: shopt extglob, y permiten hacer casi de todo.

Para lo que quieres, puedes hacerlo con expresiones básicas, tan solo debes de tener en cuenta que * significa cualquier conjunto de caracteres, ? un único carácter y [ ] una lista de caracteres.

Una posible respuesta al ejemplo que planteas sería cp /RUTA/?????a /RUTA/.

+1
0
-1

make install . es
Noticias, apuntes y pequeños tutoriales sobre GNU/Linux
Imagen de Davispunk
+1
0
-1

Muchisimas gracias he empezado un ciclo superior y no tengo mucha de idea sobre linux. Sabia algo de las ecxpresiones logicas pero no sabia como colocarlas en la comanda.

Gracias de nuevo

+1
0
-1