Se connecter avec
S'enregistrer | Connectez-vous

Problème pour récupérer une variable dans un .txt (batch dos)

Dernière réponse : dans Programmation

Bonjour à tous, :hello: 

Je souhaiterai créer un batch avec différents comptes utilisateur pour obtenir le résultat de backup sur un serveur nommé SRV mais j'ai un problème pour récupérer des variables dans un fichier texte…
Dans un premier temps j'ai créer un batch qui récupère les login et mot de passe des utilisateurs, que je transfert et stock dans deux fichiers .txt

@echo off
rem création du répertoire contenant les login
md C:\pil\log
rem création du répertoire contenant les mdp
md C:\pil\pass
echo **************domaine X**************
rem la ligne suivante demande à l’utilisateur de saisir son login
set /p variable1=Veuillez entrer votre login pour votre compte sur le domaine X :
rem transfert du login de l'utilisateur du domaine X dans le .txt sur C:\pil\log
set variable1 > C:\pil\log\v1.txt
echo votre nom d'utilisateur est : %variable1%
rem la ligne suivante demande à l’utilisateur de saisir son mdp
set /p variable2=Veuillez entrer votre mot de passe pour votre compte sur le domaine X :
rem transfert du mdp de l'utilisateur du domaine X dans le .txt sur C:\pil\pass
set variable2 > C:\pil\pass\v2.txt
echo votre mot de passe est : %variable2%
:FIN

Dans un second temps, j'ai un deuxième batch qui contient :

@echo off
debut
cls
set variable1= (Comment récupérer cette variable à partir de C:\pil\log\v1.txt :pt1cable:  ???)
set variable2= (Comment récupérer cette variable à partir de C:\pil\log\v2.txt :pt1cable:  ???)
echo Sauvegarde du serveur SRV (sur le domaine X)
net use \\SRV /user: domaineX\%variable1% %variable2%
start \\SRV\c$\Progra~1\VERITAS\NetBackup\logs\bpbkar
............
............
............

Mais c'est ici que je bloque... Je n’arrive pas à me logger avec net use car je ne sais pas comment récupérer mes deux variables %variable1% %variable2% saisi par l’utilisateur à partir
des fichiers texte enregistrés sur C:\pil\log\v1.txt et C:\pil\pass\V2.txt et qui correspondent à
\%variable1% => login
\%variable2% => mot de passe

et envoyer le résultat ici :

set variable1=<C:\pil\log\v1.txt :heink: 
set variable2=<C:\pil\pass\v2.txt :heink: 

Je ne sais pas comment récupérer les variables des deux fichiers txt :cry: 
Comment faire ?
Est ce possible ?
Y a t-il une autre solution? plus simple ?

Est ce que quelqu'un peut m'aider ? Merci pour vos réponse :jap:  :jap:  :jap: 

Cordialement,
Chris
Lassé par la pub ? Créez un compte

je viens de tester avec :

set variable1 = for /f "usebackq" %%a in (`type C:\pil\log\v1.txt`) do set variable1=%%a

set variable2 = for /f "usebackq" %%a in (`type C:\pil\pass\v2.txt`) do set variable2=%%a

echo Sauvegarde du serveur SRV (Domaine X)
net use \\SRV /user:D omaine X\%var1% %var2%

Je n'arrive pas à me logger
Expert Programmation

il ne faut pas faire de set avant le for, c'est c'est le for qui génère la variable.
Ensuite, pas la peine d'utiliser le retour de "type", car le for /F ... in (fichier) lit directement dans le fichier.
  1. FOR /F %%a IN (C:\pil\log\v1.txt) DO SET variable1=%%a

Lassé par la pub ? Créez un compte
Tom's guide dans le monde