#1 Le 22/12/2017, à 08:04
- Montesquat
[Résolu]Passer un commande avec une variable
Bonjour, mon problème est peut-être bête mais je bute dessus
Je voudrais renommer un répertoire en mode commande (commande mv) dans un script.
J'ai mon répertoire d'origine
je saisie une date que je récupère dans une variable
je voudrais renommer mon répertoire en y rajoutant la date à la fin (c'est là où je coince)
Bête mais je n'y arrive pas et je n'ai rein trouvé dans les forums
VarDate=$(zenity --entry \
--title="Saisie" \
--text "saisir la date du jour (aa mm jj)" \
--entry-text "date (aa mm jj)")
echo $VarDate
mv Sauvegarde/SystemeManuel/Systeme&&$VarDate
Merci pour votre aide.
Dernière modification par Montesquat (Le 22/12/2017, à 15:23)
Hors ligne
#2 Le 22/12/2017, à 08:17
- pingouinux
Re : [Résolu]Passer un commande avec une variable
Bonjour,
mv -i "nom_repertoire" "nom_repertoire$VarDate"
-i permet d'être averti si le nom existe déjà
Éviter les espaces dans les noms de fichiers, c'est une source d'ennuis ultérieurs.
Hors ligne
#3 Le 22/12/2017, à 08:39
- Montesquat
Re : [Résolu]Passer un commande avec une variable
Merci, ça marche!!
Hors ligne
#4 Le 22/12/2017, à 08:56
- Hizoka
Re : [Résolu]Passer un commande avec une variable
si c'est good, ajoute [Résolu] dans ton titre de topic.
KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github
Hors ligne
#5 Le 22/12/2017, à 09:04
- MicP
Re : [Résolu]Passer un commande avec une variable
Bonjour Montesquat
Pour choisir la date,
essaye la ligne de commande suivante :
varDate="$(zenity --calendar --date-format='_%d-%m-%Y' 2>/dev/zero)"
echo $varDate
Ça va peut-être te plaire
=======
Avec le shell bash
pour ajouter ta date choisie à la suite du nom de répertoire,
mv -i Sauvegarde/SystemeManuel/Systeme Sauvegarde/SystemeManuel/Systeme$varDate
peut aussi s'écrire comme ça:
mv -i Sauvegarde/SystemeManuel/Systeme{,$varDate}
=======
Si c'est la date du jour actuel que tu veux ajouter,
ce n'est peut-être pas la peine d'en demander la saisie,
tu peux directement utiliser :
mv -i Sauvegarde/SystemeManuel/Systeme{,$(date +'_%d-%m-%Y')}
=======
Tu peux aussi ajouter l'heure, minute, seconde
ce qui te permetra d'éviter d'avoir deux répertoires avec le même nom
et donc d'avoir à utiliser l'option -i
mv Sauvegarde/SystemeManuel/Systeme{,$(date +'_%d-%m-%Y_%H-%M-%S')}
Dernière modification par MicP (Le 22/12/2017, à 09:31)
Hors ligne
#6 Le 22/12/2017, à 15:24
- Montesquat
Re : [Résolu]Passer un commande avec une variable
Remerci, très bien!!
Hors ligne