Comment coder un chemin d'accès pour exécuter un script ou pour copier un fichier dans un dossier ?
Bonjour,
Je ne connais pas le bash et j'ai une manip assez compliquée à faire.
il me faut renommer un fichier sur une machine linux puis transférer ce fichier sur une machine Windows
via scp avec une connexion ssh sans mot de passe.
A l'aide du net j'ai pu réaliser un petit script qui fonctionne pour le renommage avec tous les éléments dans le même dossier.
Mais je n'arrive pas à le faire fonctionner avec le script dans un dossier SCRIPTS, avec un dossier ARCHIVES dans lequel sera déplacé tous les fichiers après transfert sur la machine Windows.
et avec un dossier LOGS lequel sera créé puis mis à jour le fichier.
J'ai du mal avec les chemins d'accès à ces différents dossiers.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| #"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
# Renommer export avant transf
#"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
# renxpt.bash # GG #
#!/bin/sh
#
################################################ Création fichier log si absent
gdate=$(date +"%d/%m/%Y à %Hh%M") # Récupération de la date et l'heure a laquelle le script est lancé
if [ ! -f logrename.txt ]; # Vérifie si absence du fichier log
then
touch logrename.txt # Si absent créé le fichier
echo $gdate >> logrename.txt # et ajouter la date à laquelle le script est executé
else
echo $gdate >> logrename.txt # Sinon si fichier de log présent ajouter la date
fi
################################################
################################################ Renommage fichier par suppression préfix 9 caractères (aaabbbccc)
for nom_fichier in aaabbbccc*_973.txt # Boucle pour rechercher tout fichier debutant avec aaabbbccc suivi de _973 et une extension .txt
do
nouveau_nom_fichier=${nom_fichier//aaabbbccc/} # Attribution à la variable nouveau_nom_fichier la valeur de nom_fichier sans le préfix aaabbbccc
# Pour supprimer le prefixe aaabbbccc ne rien mettre comme valeur de remplacement
mv $nom_fichier $nouveau_nom_fichier # Renommage
echo $nouveau_nom_fichier "est renommé" >> logrename.txt # Ecrire dans le log le nom du fichier renommé
mv $nouveau_nom_fichier ARCHIVES # Archivage du fichier renommé
echo $nouveau_nom_fichier "est déplacé dans dossier ARCHIVES d'archivage" >> logrename.txt
done
############################################################################################################################################################ |