
Estoy intentando hacer lo siguiente:
- exportar una base de datos (tal vez hacer un .tgz, eso es trivial)
- empaquetar un árbol entero en un .tgz
- copie ambos archivos en un directorio con nombre en un servidor diferente.
IpoderHaga todas estas cosas con el script actual (bash) que tengo actualmente. Pero como busco automatizar las cosas, necesito más automatización.
En el momento yo
- hacer un directorio con la fecha de hoy
- mysqlvolcar una base de datos en un archivo con un nombre que contenga esa fecha
- cree un .tgz de un árbol de directorios, nuevamente con un nombre que contenga la fecha de hoy
- conectarse a un servidor a través de sftp (o scp, no importa... es un servidor ftp(s) de Windows)
- cargar un archivo (actualmente estático) en un directorio (actualmente estático)
- Salga del servidor SFTP y muestre un estado para la carga.
¿Debo convertir los dos nombres de archivos en variables antes de conectarme al servidor SFTP, para poder decir "poner $nombredearchivo1", etc.?
Respuesta1
Con cualquier shell POSIX (incluido bash
) puede utilizar comandos como estos
# Today's date
today=$(date +'%Y-%m-%d')
# Create directory
mkdir "$today"
# Dump SQL backup
mysqldump … > "$today/sqlbackup.$today.sql"
# Make a tarball
tar cf "$today.tgz" "$today"
# Transfer file
scp -p "$today.tgz" remoteHost:
# Get a status report from the immediately preceding command
echo "Status is $? (0=good)"