Mientras aprenden Linux, siempre es normal que los novatos sigan escribiendo varios comandos para realizar una tarea simple. Esto es comprensible, especialmente cuando uno se está acostumbrando a usar la terminal.
Sin embargo, mientras espera convertirse en un usuario avanzado de Linux, aprender lo que yo llamaría "comandos de acceso directo" puede reducir significativamente las tendencias a perder el tiempo.
En este artículo, explicaremos una manera fácil, utilizando un solo comando para copiar un archivo en varios directorios en Linux.
En Linux, el comando cp se usa para copiar archivos de un directorio a otro, la sintaxis más fácil para usarlo es la siguiente:
# cp [options….] source(s) destination
Alternativamente, también puede usar el comando de copia avanzada, que muestra una barra de progreso mientras copia archivos/carpetas grandes en Linux.
Considere los siguientes comandos, normalmente, escribiría dos comandos diferentes para copiar el mismo archivo en dos directorios separados de la siguiente manera:
# cp -v /home/aaronkilik/bin/sys_info.sh /home/aaronkilik/test # cp -v /home/aaronkilik/bin/sys_info.sh /home/aaronkilik/tmp
Suponiendo que desea copiar un archivo en particular en hasta cinco o más directorios, esto significa que tendría que escribir cinco o más comandos cp ?
Para acabar con este problema, puede emplear el comando echo, un tubo , xargs comando junto con el cp comando en el siguiente formulario:
# echo /home/aaronkilik/test/ /home/aaronkilik/tmp | xargs -n 1 cp -v /home/aaronkilik/bin/sys_info.sh
En el formulario anterior, las rutas a los directorios (dir1,dir2,dir3…..dirN) se repiten y canalizan como entrada a los xargs comando donde:
-n 1
– le dice a xargs que use como máximo un argumento por línea de comando y lo envíe al comando cp.cp
– acostumbrado a copiar un archivo.-v
– habilita el modo detallado para mostrar detalles de la operación de copia.
Intente leer las páginas man de cp
, echo
y xargs
Comandos para encontrar información de uso útil y avanzada:
$ man cp $ man echo $ man xargs
Eso es todo, puede enviarnos preguntas en relación con el tema o cualquier comentario a través del formulario de comentarios a continuación. También puede leer sobre el comando de progreso que ayuda a monitorear el progreso de (cp , mv , dd , tar, etc.) que se ejecutan actualmente en Linux.