Comment lire la 7e ligne d'un fichier ? [Résolu] [Batch] - Shell/Batch - Programmation
Marsh Posté le 08-03-2007 à 15:15:52
ReplyMarsh Posté le 08-03-2007 à 15:26:46
ReplyMarsh Posté le 08-03-2007 à 15:33:16
for /f "skip=6 tokens=2 delims==" %%i in ('type y.txt') do echo %%i & goto suit
:suit
tu remplace y.txt par le chemin du fichier.ini
Marsh Posté le 08-03-2007 à 15:34:56
@echo off
for /f "delims=" %%a in ('more/e +6 ^< profiles.ini') do set "ligne=%%a"
echo %ligne%
pause
Marsh Posté le 08-03-2007 à 15:37:24
Je ne connaissai pas la commane more/e, elle est propre a xp ?
Marsh Posté le 08-03-2007 à 15:47:24
Hum, j'en sais rien ^^
J'ai toujours tourné sous XP pro quand je codais en batch donc j'peux pas trop te répondre.
Marsh Posté le 08-03-2007 à 15:51:38
Génial Webding !
J'ai fait :
for /f "skip=6 tokens=2 delims==" %%i in ('type "%APPDATA%\Thunderbird\profiles.ini"') do echo %%i & goto suit |
Ca marche nickel.
L'autre commande de Blastkiller marchait presque, elle m'affichait la dernière ligne "Default=1", même avec more/e +5.
Merci beaucoup !
Ca m'est utile pour faire un batch de sauvegarde d'un (petit) parc de postes avec Xcopy.
Des fois les utilisateurs mettent leurs mails ailleurs que dans le répertoires par défaut.
Encore une question (j'abuse : ) : Pourquoi le code suivant m'affiche 1 ?
Code :
|
Comment je peut manipuler la valeur récupérée après ?
Marsh Posté le 08-03-2007 à 15:55:01
Essaye comme ça:
for /f "skip=6 tokens=2 delims==" %%i in ('type "%APPDATA%\Thunderbird\profiles.ini"') do set MailsThunderbird=%%i & goto suit
:suit
echo %MailsThunderbird%
Marsh Posté le 08-03-2007 à 16:03:32
woups, autant pour moi :
@echo off
for /f "delims=" %%a in ('more/e +6 ^< profiles.ini') do if not defined ligne set "ligne=%%a"
set ligne=%ligne:~5%
echo %ligne%
pause
sa marche mieux !
Marsh Posté le 08-03-2007 à 16:05:00
Super, Merci Webding !!!
Ca marche super.
Je vais pouvoir faire mes Xcopy :
Code :
|
Marsh Posté le 09-03-2007 à 10:37:55
Le fait de connaitre le chemin ca me permet aussi de tester la présence de parent.lock.
Ce fichier indique que Thunderbird est en cours d'exécution et il fait échouer mon Xcopy.
Idem pour Firefox.
Il me reste un petit souci : il y a un espace à la fin de la chaîne.
Comment l'enlever ?
Marsh Posté le 09-03-2007 à 11:15:03
J'ai trouvé ! Ici : http://www.experts-exchange.com/OS [...] d=20816600
Code :
|
Marsh Posté le 09-03-2007 à 14:52:07
Ca y est ! J'ai pu faire ce que je voulais : sauvegarder mes profils Firefox et Thunderbird, peu importe où ils sont situés (du moment qu'ils sont accessibles par l'explorateur, naturellement).
Il suffit de copier les lignes ci-dessous dans un fichier .bat à lancer comme un exécutable.
C'est hyper simple à utiliser, aucune installation de logiciels de backup à faire, et c'est méga rapide !!
Voici mon code, si ca peut vous servir :
(et merci à vous pour l'aide)
@echo off |
Marsh Posté le 12-10-2007 à 17:19:14
Code :
|
Marsh Posté le 28-08-2015 à 12:07:06
ça marche mieux comme ça :
Code :
|
Marsh Posté le 08-03-2007 à 14:28:14
Bonjour,
Je cherche à extraire le chemin où sont stockés mes mails Thunderbird afin de faire un backup.
Il faut donc pour cela lire le fichier C:\Documents and Settings\COUILLARD-12002\Application Data\Thunderbird\profiles.ini[/u]
Et à la 7e ligne il y a Path=X:\Thunderbird\Profiles\6cnzn7ci.défaut qui change parfois.
Savez-vous comment récupérer cette donnée "X:\Thunderbird\Profiles\6cnzn7ci.défaut" en batch Windows ?
Mon profiles.ini :
[General]
StartWithLastProfile=0
[Profile0]
Name=12002
IsRelative=0
Path=X:\Thunderbird\Profiles\6cnzn7ci.défaut
Default=1
Message édité par sieurcoug le 09-03-2007 à 14:53:17