Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente | |||
informatique:windows:set [2008/09/29 15:21] benoit |
— (Version actuelle) | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== SET ====== | ||
- | ''set'' permet de définir une variable, mais permet aussi la manipulation de chaines de caractères ou de faire des calcules d'expression. | ||
- | |||
- | |||
- | |||
- | ==== Saisir une variable ==== | ||
- | set /p VAR=Entrer la variable ? | ||
- | |||
- | Saisir un mot de passe sans l'afficher dans la console (c'est un beaucoup plus sport). Il faut créer le script suivant : | ||
- | @echo off | ||
- | echo hP1X500P[PZBBBfh#b##fXf-V@`$fPf]f3/f1/5++u5x>in.com | ||
- | set /p password=Enter password:<nul | ||
- | for /f "tokens=*" %%i in ('in.com') do set password=%%i | ||
- | del in.com | ||
- | echo. | ||
- | echo The Password is:"%password%" | ||
- | pause | ||
- | |||
- | ==== opération mathématique ==== | ||
- | |||
- | Pour calculer (2+2)x2 | ||
- | set /A (2+2)*2 | ||
- | |||
- | |||
- | |||
- | |||
- | ==== Retirer les espaces blancs inutiles ==== | ||
- | |||
- | Retirer les espaces inutiles du début | ||
- | |||
- | set str= espace inutile a supprimer au debut | ||
- | echo %str% | ||
- | for /f "tokens=* delims= " %a in ("%str%") do set str=%a | ||
- | echo %str% | ||
- | |||
- | Résultat: | ||
- | espace inutile a supprimer au debut | ||
- | espace inutile a supprimer au debut | ||
- | |||
- | |||
- | Retirer les espaces inutiles à la fin | ||
- | FIXME | ||
- | |||
- | set str=espace inutile a supprimer a la fin &rem | ||
- | echo "%str%" | ||
- | for /l %a in (1,1,31) do if "!str:~-1!"==" " set str=!str:~0,-1! | ||
- | echo "%str%" | ||
- | |||
- | ==== Remplacer une chaine de caractères ==== | ||
- | |||
- | Pour remplacer **the** par **a**, il faut définir le chaine dans une variable (ici ''STR'') puis redéfinir la variable en remplaçant la chaine | ||
- | set STR=the cat in the hat | ||
- | echo %STR% | ||
- | set STR=%STR:the=a% | ||
- | echo %STR% | ||
- | |||
- | Resultat: | ||
- | |||
- | the cat in the hat | ||
- | a cat in a cat | ||
- | |||
- | |||
- | |||
- | ==== Retirer une chaine de caractères ==== | ||
- | |||
- | Même chose que pour remplacer mais on ne met aucun caractère de remplacement | ||
- | set STR=the cat in the hat | ||
- | echo %STR% | ||
- | set STR=%STR:the=% | ||
- | echo %STR% | ||
- | |||
- | Resultat: | ||
- | |||
- | the cat in the hat | ||
- | cat in cat | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | ==== Afficher un certain nombre de caractères ==== | ||
- | |||
- | Afficher les 4 premiers caractères de la chaine **coucou** | ||
- | set str=coucou | ||
- | echo %str% | ||
- | set str=%str:~0,4% | ||
- | echo %str% | ||
- | |||
- | Résultat: | ||
- | coucou | ||
- | couc | ||
- | |||
- | |||
- | Afficher les 4 derniers caractères de la chaine **coucou** | ||
- | set str=coucou | ||
- | echo %str% | ||
- | set str=%str:~-4% | ||
- | echo %str% | ||
- | |||
- | Résultat: | ||
- | coucou | ||
- | ucou |