FORUM Tom's Hardware » Le monde de Linux » A l'aide ! » Problème avec ma programmation bash...
 

Problème avec ma programmation bash...

Il y a 44 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici



Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet : Problème avec ma programmation bash...
 
Plus d'informations

Bonjour! Je suis présentement en train de faire un script de backup en bash...et je suis en train d'apprendre en même temps! J'ai un bug plate, et j'apprécierais de l'aide!

Voici mon script:

#!/bin/bash

# Déclaration des variables

rsync=/usr/bin/rsync
backups=07
dest=/media/distance
sourc=/data
jour=$(date +%d)
mois=$(date +%m)
annee=$(date +%Y)
rapport=/root/Desktop/log_backup.txt

# Obtention de la date de la première sauvegarde

jour=`expr $jour - $backups`

# Création de la variable de la date, ajouter un 0 avant
# le chiffre de la date s'il est plus petit que 9 (enleve un bug)

if [ expr $jour <= 9 ] ; then
jour=0$jour
fi

journee=$annee$mois$jour

# Création du fichier de rapport
echo Backup de ServData >> $rapport
echo ------------------ >> $rapport
echo Nom du répertoire supprimé : $journee >> $rapport
echo ------------------ >> $rapport

# Suppression de la première sauvegarde

if [ -d $dest/$journee ] ; then
rm -rf $dest/$journee
fi

# Rétablir la date dans le script

jour=$(date +%d)
journee=$annee$mois$jour

# Écriture dans le rapport

echo Nom du nouveau répertoire: $journee >> $rapport
echo ------------------ >> $rapport

# Création du répertoire de sauvegarde
mkdir -p /$dest/$journee

# Exécution de la sauvegarde
$rsync -a --numeric-ids -v --link-dest=../1 $sourc $dest/$journee >> $rapport

# Fin du rapport

echo Fin >> $rapport
echo ------------------ >> $rapport


J'ai un problème dans cette partie:

if [ expr $jour <= 9 ] ; then
jour=0$jour
fi

Ce que je veux faire, c'est qu'étant donné que mon format de date donne 20050909, et que je soustrais 7 (la sauvegarde la + vieille), ma date donne 2005099...alors je veux ajouter un 0 si le chiffre $jour est plus petit ou égal à 9...bref...j'aimerais comprendre! Je ne connais pas tellement ce langage de programmation, tout le reste marche, mais c'est ce petit "hic" qui me fait perdre du temps!

Merci!


---------------
-= NoIsEkIlLeR was HeRe!!! =-

Plus d'informations

Alors, personne n'a d'idée?


---------------
-= NoIsEkIlLeR was HeRe!!! =-
be root or be dead...
Plus d'informations

Au lieu de construire tes dates à la main, tu pourrais utiliser :
date +%Y%m%d
et
date --date='7 days ago' +%Y%m%d

Plus d'informations

a mon avis c est <= ps ms plus -lt ou -lg ...
tu peux pas utiliser les signe < > car en shell il on deja une utlisation pour les redirection


Message édité par Le_Tolier le 15-09-2005 à 22:31:01

---------------
C est une nuit idéale.....

Terriblement efficace!! + Video

 

Plus d'informations

Merci à vous deux! Je suis parti pour la fin de semaine, je ne pourrai donc pas tester, mais je vous reviens avec une réponse positive(je l'espère!) ou négative sous peu!

a+


---------------
-= NoIsEkIlLeR was HeRe!!! =-
Plus d'informations

Merci bien! J'ai réussi à atteindre mon but avec la commande --date='7 days ago'!!!

Vraiment super!

Bye!


---------------
-= NoIsEkIlLeR was HeRe!!! =-

Aller à :
 
  FORUM Tom's Hardware » Le monde de Linux » A l'aide ! » Problème avec ma programmation bash...

Annonces Google
Publicité
Actualités relatives

XNA : Plate forme de développement chez Microsoft

Publié le 25 March 2004

Elle se nomme XNA, elle devrait permettre aux développeurs d'être plus efficace dans leur travail via l'élimination des barrières techniques qui limitent l'imagination des artistes. XNA est en fait la prochaine plate forme de développement Lire la suite

Envie de coder en .Net ? Essayez Mono

Publié le 02 July 2004

Mono est sorti depuis peu dans sa version 1.0, après trois Release Candidate (rappelons qu'une RC est destinée à être la dernière mise à jour avant la version finale). Mono vous permet de développer des applications en .Net sous Linux, Mac et Window Lire la suite

C-jump: l&#039;informatique pour votre enfant

Publié le 21 October 2005

Apprendre du code, oui! Mais en s’amusant! Tel est le pari de C-jump, un jeu de plateau à destination d’un public jeune et moins jeune qui permet de s’initier de manière ludique aux joies du C++ et de Java, c'est & Lire la suite

Un autre tuner TV ExpressCard chez TerraTec

Publié le 21 May 2007

TerraTec annonce un nouveau tuner TV au format ExpressCard, la Cinergy T Express. Elle est très proche de la Cinergy HT Express (hybride analogique/TNT) mais ne dispose que d’un tuner TNT. On retrouve donc les fonctions d’enregistrement en MPEG-2 et le g Lire la suite

Les derniers tests

Le Home Cinema avec un graphique intégré ?

Publié le 03 October 2008

Le Radeon HD 3200 (chipset 780G) et le GeForce 8200 (chipset MCP78S) sont les premiers circuits vidéo intégrés à pouvoir accélérer la lecture du Blu-ray. Nous examinons en détail les performances de ces deux solutions. Lire la suite

Charts cartes graphiques Q3 2008 : 101 cartes testées

Publié le 29 September 2008

Les charts de 101 cartes graphiques anciennes et récentes sous 9 applications, avec au total 6767 scores. Quel gain attendre du remplacement de votre carte graphique par un nouveau modèle dans chaque application/résolution et en moyenne ? Lire la suite

Upgrader son portable en 9 leçons

Publié le 29 September 2008

Ergonomie, performances, autonomie, une dizaine d’améliorations sont réalisables sur votre PC Portable. Laissez-vous guider par la rédaction pour reprendre en mains votre vieille machine. Lire la suite

Que choisir ? Home Cinema 5.1 ou projecteur de son ?

Publié le 25 September 2008

Faut-il craquer pour un ensemble 5.1 ou pour une barre de son ? Découvrez les forces et faiblesses comparées de chaque système. Lire la suite