Actualmente, estoy ejecutando estos dos comandos para crear una copia de seguridad rápida del directorio. ¿Hay alguna forma de combinar los dos comandos en uno, de modo que copie y renombre el nuevo directorio en un comando?
#cp -R /tf/Custom_App /tf/Custom_App_backups/
#mv /tf/Custom_App_backups/Custom_App /tf/Custom_App_backups/Custom_App_2017-12-21

cp -R /tf/Custom_App /tf/Custom_App_backups/Custom_App_2017-12-21Respuestas:
Deberías poder hacer solo
Sin embargo , si el directorio de destino ya existe, esto agregaría la parte final de la ruta de origen a la ruta de destino, creando
/tf/Custom_App_backups/Custom_App_2017-12-21/Custom_Appy luego copiando el resto del árbol dentro de eso.Para evitar esto, utilícelo
/tf/Custom_App/.como fuente. Por supuesto, en ese caso es posible que deseerm -r /tf/Custom_App_backups/Custom_App_2017-12-21primero, si no desea que haya archivos más viejos por ahí después de la copia.La diferencia entre
/some/diry/some/dir/.se discutió hace un tiempo en cp se comporta de manera extraña cuando. (punto) o .. (punto punto) son el directorio fuentefuente
.como directorio de origen es usar el-Tindicador para indicarcpque se sobrescriba el destino en lugar de crear un nuevo miembro dentro de él.cp./tf/Custom_app/.truco es justo lo que necesitaba.cp -aTambién funciona.cp -apor supuesto, también aparece en, por ejemplo, FreeBSD y OpenBSD, pero todavía no es una característica estándar, es decir, no está especificada por POSIX . (cp -TQue se ha mencionado anteriormente parece un GNUism, que no está en POSIX, y no en los BSD por lo que yo puedo ver.)Alternativamente, puede hacerlo así:
Esto le permitirá especificar su ubicación personalizada de antemano. Además,
/.tenga en cuenta que usa el sufijo Esto le permite copiar solo el contenido y excluir la carpeta que lo contiene, en este caso, es laCustom_appcarpeta.fuente