Fichier log dans le répertoire du script
Résolu
Tchupacabra
Messages postés
90
Date d'inscription
Statut
Membre
Dernière intervention
-
Tchupacabra Messages postés 90 Date d'inscription Statut Membre Dernière intervention -
Tchupacabra Messages postés 90 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'essaye de de générer un script shell pour mettre à jour un site web via la commande LFTP.
J'utilise l'option --log pour générer un fichier log.
Grossièrement :
Mon petit problème est que le script peut être exécuté en ligne de commande de plusieurs endroit se qui fait que le fichier log n'est jamais au même endroit.
Y a-t-il une syntaxe pour qu'il soit toujours dans le répertoire du script ?
(sans pour autant spécifier le chemin absolu)
Merci d'avance !
J'essaye de de générer un script shell pour mettre à jour un site web via la commande LFTP.
J'utilise l'option --log pour générer un fichier log.
Grossièrement :
#!/bin/sh lftp -e 'mirror --log=fichier.log -R SRC DEST -u USER,PASS HOST;
Mon petit problème est que le script peut être exécuté en ligne de commande de plusieurs endroit se qui fait que le fichier log n'est jamais au même endroit.
Y a-t-il une syntaxe pour qu'il soit toujours dans le répertoire du script ?
(sans pour autant spécifier le chemin absolu)
Merci d'avance !
A voir également:
- Log script
- Script vidéo youtube - Guide
- Mas script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
- Script cmd - Guide
- Ti college plus log - Forum calculatrices
7 réponses
Sinon, essaie ça :
#!/bin/sh lftp -e 'mirror --log='"${0%/*}/"'fichier.log -R SRC DEST -u USER,PASS HOST;
Salut Tchupacabra,
Essayes :
Dal
Essayes :
#!/bin/sh lftp -e 'mirror --log=$(pwd)/fichier.log -R SRC DEST -u USER,PASS HOST;
Dal
Je viens de faire le test... sans succès.
mirror: $(pwd)/fichier.log: Aucun fichier ou dossier de ce type
correction :
Le fichier log est quand même généré dans le dossier courant de la console... et non du dossier du script.
#!/bin/sh lftp -e 'mirror --log='$(pwd)'/fichier.log -R SRC DEST' -u USER,PASS HOST;
Le fichier log est quand même généré dans le dossier courant de la console... et non du dossier du script.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut,
sans pour autant spécifier le chemin absolu
Ben pourquoi ? Ça serait quand même le plus simple, non ?
sans pour autant spécifier le chemin absolu
Ben pourquoi ? Ça serait quand même le plus simple, non ?
Je n'avais pas vu que les commandes mirror sont dans une chaine (tu as mis un ' ouvrant, mais pas fermant). Aussi, je réalise que tu ne veux pas mettre le fichier log dans le répertoire d'où ton script en lancé, mais dans celui où réside ce script.
Alors, peut-être ceci ira mieux :
Dal
Alors, peut-être ceci ira mieux :
#!/bin/sh SCRIPTDIR=$(cd -P -- "$(dirname -- "$0")" && pwd -P) LFTPCOMMAND="'mirror --log=$SCRIPTDIR/fichier.log -R SRC DEST -u USER,PASS HOST;'" lftp -e $LFTPCOMMAND
Dal
Bonne continuation.