[Batch] Astuces Fichiers Batch (.bat)

Info : Rechercher des fichiers

*.* Tous les fichiers
*.txt Tous les fichiers textes
b*.exe Tous les fichiers exécutables commençants par un b
X*.* Affiche la liste des fichiers commençant par X

Info : Changer le nom de la barre
Title Installation By DragonCity

Info : Lancer le fichier bat à l’autorun de votre CD
[Windows] Créer un CD auto-exécutable

1 – Si vous avez le message Echo Off n’est pas reconnu…

C’est que vous utilisez Notepad,et il faut modifier l’encodage,voir le menu.

Encodage en ANSI

2 – Faire une boucle,exemple ici jusqu’à atteindre 7

** A mettre au début **

set /a counter=0
:numbers

shutdown -s -t 0 est la condition final
(la je lui dis d’éteindre mon pc a la fin de la boucle,-r pour redémarrer)
shutdown -r -t (valeur en seconde)

Pour sortier du fichier bat (End Of File)
if %count% ==7 goto :eof

**A mettre a la fin **

set /a counter=%counter%+1
echo Nombre de fois : %counter% / 6

if %counter% ==6 (shutdown -s -t 0)
goto :numbers

3 – Faire une pause ou un délai d’attente

Pour une pause rajouter :

Pause

Pour un délai d’attente rajouter :

Timeout 20

(une pause de 20 secondes)

4 – Fermer un programme

taskkill /im firefox.exe

(on ferme Firefox proprement)

taskkill /f /im firefox.exe
(on force Firefox à se fermer)

5 – Afficher ou cacher les commandes

Ajouter au début de votre code :

@ECHO off : Pour cacher

@ECHO on : Pour afficher

6 / Timeout Aléatoire

Timeout entre 0 et 100
(Remplacer la valeur 100 par 1000 pour avoir entre 0 et 1000)

set /A Valeur=%RANDOM% %% 100
timeout %Valeur%

Timeout définit dans une plage de valeurs
(Ici on aura une plage de valeur entre 20 et 100)

set /A Valeur=%RANDOM% * 80 / 32768 + 20
timeout %Valeur%

80 = Plage de valeurs
20 = Valeur minimum que l’on veut

6 – Appeler un fichier bat dans un autre

call fichier.bat

7 – Répondre a une question par Oui ou Non

Choix Simple

@echo off
set /P choix=Fermer le programme (o=Oui ; n=Non) ? :
If %choix%==o (taskkill /im firefox.exe) else (echo Pas fermer !)

ou Choix multiple

set /P choix=Installer le programme (1 = word / 2 = excel / 3 = rien)? :
if /I « %choix% »==« 1 » (goto :A)
if /I « %choix% »==« 2 » (goto :B)
if /I « %choix% »==« 3 » (goto :C)
goto question
:A
echo Installation de Word
goto C
:B
echo Installation d’Excel
:C

8 – Forcer la suppression d’un dossier avec RMDIR

echo O|rmdir /S « \\?\E:\Pictures\DossieraSupprimer
pause

echo O| : permet de répondre OUI automatiquement.

ou

rmdir /S /Q c:\temp

/S : Supprime tous les sous-répertoires et fichiers également.
/Q : Pas de confirmation avant la suppression

9 – Créer un dossier avec une question et des sous dossiers

@echo off
cd games
set /p name=« Le Nom Du Jeu : « 
md
« %name% »
cd %name%
md content
md code

10 – Copier un fichier ou répertoire dans plusieurs sous dossiers

Fichier
@echo on
for /d %%a in (*.*) do copy fichier.txt « %%a »
pause

Dossier
@echo on
for /d %%a in (*.*) do xcopy/s « Optimize GDI » « %%a »
pause

11 – Supprimer les dossiers vides

@echo on
for /f « tokens=* » %%i in (‘dir /s /b /ad C:\test\* ^| sort /r’) do rd « %%~i »
pause

Remplacer C:\test\ par le dossier a vérifier.

12 – Supprimer des fichiers ou dossiers

del /S /Q pour ne pas demander de confirmation !

del /s Votredossier\*.exe

Supprimer les fichiers thumbs
del /s Thumbs.db

Supprimer les jpg, .ini et .db dans le dossier musique

del /s Music\*.jpg
del /s Music\*.ini
del /s Music\*.db

Vous n’avez plus qu’à placer le fichier .bat

dans le dossier C:\Users\ »Nom D’utilisateur » et le lancer!

Supprimer le répertoire « Optimize GDI »
rmdir /S /Q « Optimize GDI »

Supprimer tous les répertoires « sys »
@echo off
for /r /d %%x in (« * ») do (
pushd « %%x »
rmdir /s /q « sys »
popd
)
pause

13 – Regrouper les fichiers .txt

Copy * fichierCompil.txt

14 – Copier avec Xcopy

Copier un dossier
Xcopy « dossier » « C:\dossier_destination\ »

Copier les fichiers seulement
Xcopy « *.* » « C:\dossier_destination\ »

Copier tous les fichiers et dossiers
Xcopy/s « *.* » « C:\dossier_destination\ »

Rajouter une option
/Y Remplace les fichiers existants
/q Pour une installation silencieuse

15 – Rajouter dans hosts

echo 127.0.0.1 activate.adobe.com >> C:\Windows\System32\drivers\etc\hosts

16 – Écrire dans un fichier texte

echo texte_à_ecrire > fichier_de_sortie.txt

echo « ecriture a la fin du fichier » >> fichier_de_sortie.txt 

17 – Désinstaller une MAJ Windows

start /w wusa.exe /uninstall /kb:971033 /quiet /norestart

Il faudra ensuite masquer la mise a jour quand elle sera proposé.

Ou le faire avec un script :
RemoveWAT+ Watermark v0.8 + Script MAJ.zip

start « title » /b /wait cscript.exe « HideWindowsUpdates.vbs » 971033

Si vous voulez cacher d’autre MAJ rajouter avec un espace
start « title » /b /wait cscript.exe « HideWindowsUpdates.vbs » 971033 3075249 2952664

18 – Liste fichiers et dossiers

Lister tous les fichiers et dossiers avec extensions
dir /b > fichier.txt

Lister fichiers et dossiers avec extensions et arborescence
dir /b /s > fichier.txt

Lister tous les fichiers sans extensions
for /f « delims= » %%i in (‘dir /A-D /B /O:GNE *.*’) do @echo %%~ni >> fichier.txt

Lister tous les dossiers
for /f %%i In (‘dir /b /ad *.*’) Do @echo %%~ni >> fichier.txt

19 – Boucle pour convertir des fichiers

@echo off
SET PATH=sys
For %%1 in (*.raw) do (
echo %%1
raw2wav.exe « %%1 » « %%1.wav » 2 44100 16)

SET PATH=sys >> Définit le dossier source du programme
echo %%1 >> montre le nom de chaque fichier converti

20 – Renommer des fichiers avec double extensions

Rename *.wav *.
Rename *.raw *.wav

21 – Renommer des caractères dans un fichier

@echo off
setLocal EnableDelayedExpansion

for /f « tokens=* delims=  » %%a in (items.xml) do (
set str=%%a

set str=!str:FBA-XXX Pro=CPS1 CPS2 Neo-Geo!
set str=!str:MAMEoXTRAS v1.14=MAME Arcade!
set str=!str:mednafenx_nes=Nintendo NES!
set str=!str:Surreal64 CE=Nintendo 64!
set str=!str:mednafenx_pce=Pc Engine!
set str=!str:NeoGenesis=Megadrive!
set str=!str:MekaX=Master System!
set str=!str:snes9xbox=Super Nintendo!

echo !str!>>fichiertemp.txt
)
type fichiertemp.txt>items.xml

del fichiertemp.txt

22 – Lancer tous les fichiers bat dans les dossiers et sous dossiers

@echo off
for /r /d %%x in (« * ») do (
pushd « %%x »
call « optimize_gdi.bat »
popd
)
pause

23 – Renommer chaque fichiers *.gdi comme les dossiers

@Echo OFF

FOR /D /R %%# in (*) DO (
PUSHD « %%# »

FOR %%@ in (« *.gdi« ) DO (
Echo Ren: « .\%%~n#\%%@ » « %%~n#%%~x@ »
Ren « %%@ » « %%~n#%%~x@ »

)
POPD
)
Pause&Exit

24 – Reconnexion automatique avec Ping

Avec ces 2 scripts je teste si j’obtiens un Ping avec le site Google,et si ce n’est pas le cas:

Sois dans le Script 1,je désactive la carte réseau et la réactive,avec une connexion automatique.
Sois dans le Script 2,je me connecte à mon point d’accès,et si pas de Ping je recommence la boucle.

Script 1 : Désactivation de la Carte Réseau avec devcon

Placer Devcon.exe dans c:\devcon\

En ligne de commande tapez:

devcon find * > liste.txt
(pour avoir la liste en fichier texte)

Exemple :

USB\VID_07D1&PID_3C07\5&9CF499C&0&2
D-Link Wireless G DWA-110 USB Adapter

 

Tester le avec la commande :
devcon find *PID_3C07

Si vous avez bien votre équipement c’est parfait!

Script.bat

@echo off
:boucle
devcon_x64.exe disable *PID_3C07
timeout /t 1
devcon_x64.exe enable *PID_3C07
timeout /t 40
ping -n 1 google.com
if errorlevel 1 goto boucle

Script 2 : Reconnexion avec une boucle

@echo off
:boucle
netsh wlan disconnect interface= »DWA 110 »
timeout /t 5
netsh wlan connect ssid= »YHA Public Access » name= »YHA Public Access » interface= »DWA 110 »
timeout /t 20
ping -n 1 google.com
if errorlevel 1 EQU 0 goto boucle

Enjoy !

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

Créez un site ou un blog sur WordPress.com

Retour en haut ↑

%d blogueurs aiment cette page :