View Full Version : [BASH] script per backup
Ciao a tutti, pensavo di realizzare un semplice script di backup, l'idea in testa c'è, ma non riesco a trovare guide su come realizzarlo e allora chiedo a voi
avevo in mente:
ls -l
tutti file che trova devono essere zippati e poi copiati in un'altra cartella
quello che non riesco a fare e prendere i nomi dei file che mi ritorna il comando ls -l
spero di essermi spiegato
altrimenti, mi date qualche script già fatto che tento di capirmelo da me?
grazie 1000
Caldwell83
18-09-2009, 11:49
Per trovarsi il nome dei file in una variabile si puo' fare cosi:
for file in `ls -1`
do
echo $file
done
Occhio però ai file con gli spazi
perchè ls -l??
nn ti basta ls?
una roba scritta a caso al volo
for file in `ls`
do
(comando che vuoi per comprimere) $file
mv $file (cartella che vuoi)
done
se per qualche motivo DEVI usare ls -l allora poi devi estrapolare il solo nome file
tipo
ls -l |awk '{print $9}'
Non e' piu' semplice utilizzare direttamente tar o rsync che ti risparmi un po' di fatica ?
ls o ls -l è uguale era solo per rendervi l'idea, comunque ho capito in pieno e appena ho tempo faccio lo script
per rsync, boh, non l'ho mai usato, dovrei vedere bene il funzionamento!
cmq GRAZIE a tutti
io uso uno script simile al seguente per i backup su un altro disco:
#!/bin/sh
SOURCE=/shared/
DEST=/backup
EXCLUDE=notme/
NAME=$(date +%F-%T)
mkdir $DEST/$NAME
rsync -v -a --delete --link-dest=$DEST/latest --exclude=${EXCLUDE} $SOURCE $DEST/$NAME
rm $DEST/latest
ln -s $DEST/$NAME $DEST/latest
Questo crea una cartella /backup/<data> ogni volta che viene eseguito; i file non modificati vengono collegati con un hard-link per cui e' come un backup incrementale (senza gli inconvenienti).
Manca la parte della rimozione di quelli che non servono piu' ma non e' difficile da fare.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.