Linux shell script : faire un dossier avec la date de nom
Je suis en train de faire un simple script de sauvegarde et j'ai des problème de création d'un dossier avec le courant de la date de nom de
Mon script est et que, fondamentalement, le problème est sur la dernière ligne
drivers=$(ls /media/)
declare -i c=0
for word in $drivers
do
echo "($c)$word"
c=c+1
done
read -n 1 drive
echo
c=0
for word in $drivers
do
if [ $c -eq $drive ]
then
backuppath="/media/$word/backup"
fi
c=c+1
done
echo "doing back up to $backuppath"
cp -r /home/stefanos/Programming $backuppath/$(date +%Y-%m-%d-%T)
De sortie:
(0)0362-BA96
(1)Data
(2)Windows
0
doing back up to /media/0362-BA96/backup
cp: cannot create directory `/media/0362-BA96/backup/2012-12-05-21:58:37': Invalid argument
Le chemin est triplement vérifié qui est en vigueur jusqu'à /media/0362-BA96/
RÉSOLU:
Fait ce que janisz dit le script final ressemble
drivers=$(ls /media/)
declare -i c=0
for word in $drivers
do
echo "($c)$word"
c=c+1
done
read -n 1 drive
echo
c=0
for word in $drivers
do
if [ $c -eq $drive ]
then
backuppath="/media/$word/backup"
fi
c=c+1
done
echo "doing back up to $backuppath"
backup(){
time_stamp=$(date +%Y_%m_%d_%H_%M_%S)
mkdir -p "${backuppath}/${time_stamp}$1"
cp -r "" "${backuppath}/${time_stamp}$1"
echo "backup complete in $1"
}
#####################The paths to backup####################
backup "/home/stefanos/Programming"
backup "/home/stefanos/Android/Projects"
backup "/home/stefanos/Dropbox"
Ne
oui le dossier de sauvegarde existent dans 0362-BA96 , mais même si elle n'était pas, il serait créé automatiquement droit?
Non, il ne le serait pas.
/media/0362-BA96/backup
exister bien?oui le dossier de sauvegarde existent dans 0362-BA96 , mais même si elle n'était pas, il serait créé automatiquement droit?
Non, il ne le serait pas.
OriginalL'auteur SteveL | 2012-12-05
Vous devez vous connecter pour publier un commentaire.
:
n'est pas valide sur la GRAISSE (il est utilisé pour spécifier le disque). Certains des M$ de caractère non valide fonctionne sur les systèmes GNU/Linux, mais il est plus sûr de les éviter (il suffit de remplacer avec.
). Utilisation suivant la date format deIl devrait fonctionner sur la plupart des systèmes de fichiers, mais il pourrait être trop long pour MS-DOS FAT. Plus d'infos, vous trouverez ici.
OriginalL'auteur janisz
Essayer de le changer:
:
caractère valide? Lorsque j'utilise l'onglet de saisie semi-automatique, c'est s'enfuir avec `nouveau : mkdir: ne peut créer le répertoire
/media/0362-BA96/backup/2012-12-05-22:13:43': Invalid argument cp: cannot create directory
/media/0362-BA96/backup/2012-12-05-22:13:43': argument non Valide j'ai oublié de dire que ce n'est pas warking seulement dans le 0362-BA96 dispositif de sorcière est une clé usb , est-ce un problème?essayez sur un autre répertoire, par exemple
/tmp/
.oui son travail sur tmp de la création du dossier de date etc . Fonctionne même si je viens de droit dans le terminal cp unfichier /media/0362-BA96/sauvegarde/ de sorte que le lecteur usb son ok et il n'y a aucun problème avec elle, juste son travail dosent dans le srcipt
Essayez d'éviter tout caractère qui pourrait être nulle. Supprimer tous les
-
et:
de nom de fichier. Quel est le système de fichiers du périphérique?OriginalL'auteur sampson-chen