Búsqueda de sitios web

Cómo forzar la sobrescritura del comando cp sin confirmación


El comando cp (que significa copia) es uno de los comandos comúnmente utilizados en Linux y otros sistemas operativos similares a UNIX, para copiar archivos y directorios. En esta guía, mostraremos cómo forzar el comando cp para sobrescribir una operación de copia sin confirmación en Linux.

Por lo general, cuando ejecuta un comando cp, sobrescribe los archivos o directorios de destino como se muestra.

cp bin/git_pull_frontend.sh test/git_pull_frontend.sh

Para ejecutar cp en modo interactivo para que le avise antes de sobrescribir un archivo o directorio existente, utilice el indicador -i como se muestra.

cp -i bin/git_pull_frontend.sh project1/git_pull_frontend.sh

De forma predeterminada, las distribuciones modernas de Linux, especialmente aquellas de la familia Red Hat Enterprise Linux (RHEL), vienen con un alias para el comando cp que crea una El usuario ejecuta el comando cp en modo interactivo. Puede que este no sea el caso en los derivados de Debian y Ubuntu.

Para verificar todos sus alias predeterminados, ejecute el comando alias como se muestra.

alias

El alias resaltado en la captura de pantalla anterior implica que cuando ejecuta el comando, de forma predeterminada se ejecutará en modo interactivo. Incluso cuando utilice el comando yes, el shell le pedirá que confirme la sobrescritura.

yes | cp -r bin test

La mejor manera de forzar la sobrescritura es utilizar una barra diagonal inversa antes del comando cp como se muestra en el siguiente ejemplo. Aquí, estamos copiando el contenido del directorio bin al directorio test.

\cp -r bin test

Alternativamente, puede eliminar el alias de cp para la sesión actual y luego ejecutar su comando cp en el modo no interactivo.

unalias cp
cp -r bin test

Para obtener más información, consulte la página de manual del comando cp.

man cp

Si tiene alguna pregunta, pregúntenos a través del formulario de comentarios a continuación.