Incomprehension En Script


kakashi.
 Share

Messages recommandés

Salut les gueux, je suis en train d'etudier les scripts et je bloque sur un point. Le but etait de realiser un script permettant de renommer toutes les extensions .TXT d'un dossier en .txt. On obtient la solution suivante :

@echo off

set oldext=%1

set newext=%2

if exist *.%oldext% (

ren *.%oldext% *.%newext%

) else (

echo Cette extension de fichier n'existe pas!!!

)

pause

Voila la je comprends tous sauf l'utilité des %1 et %2. En effet, si on les enleve, le script ne fonctionne plus.

Merci d'avance.

Lien vers le commentaire
Partager sur d'autres sites

Ce sont les paramètres à passer au script (c'est du bash ? je m'y connais pas). Elles sont ici visiblement associées aux variables "oldext" et "newext".

À supposer que le script s'appelle par : monscript.sh .TXT .txt

.TXT est la variable %1 (numéro 1 dans l'appel) et est passée à "oldext"

.txt est la variable %2 (deuxième passé) et stockée dans "newext"

Le script renomme ensuite (ren = rename, donc c'est pas du Bash mais du vieux vaindoze, à moins que...) le fichier en remplaçant "oldext" par "newext" (donc .TXT vers .txt).

Même topo si tu fais un monscript.sh .caca .boudin >> Tous les termes .caca seront renommés vers .boudin d'après le passage des variables %1 et %2.

Bref, pas de quoi casser trois pattes à un canard.

Lien vers le commentaire
Partager sur d'autres sites

Lo,

En effet %1 et %2 sont les paramètres d'appel du script.

Ensuite ils sont affectés aux variables oldtext et newtext.

On peut se passer de ces 2 variables en faisant le script suivant :

@echo offif exist *.%1 (ren *.%1 *.%2) else (echo Cette extension de fichier n'existe pas!!!)pause

Lien vers le commentaire
Partager sur d'autres sites

Re,

Emulator-GT pourquoi tu te prends la nouille à passer par un txt2 intermédiaire ?

ren *.txt *.TXT

Ça marche très bien aussi.

L'avantage du script c'est que tu choisis l'extension de départ et d'arrivée.

Lien vers le commentaire
Partager sur d'autres sites

Re,

Emulator-GT pourquoi tu te prends la nouille à passer par un txt2 intermédiaire ?

ren *.txt *.TXT

Ça marche très bien aussi.

L'avantage du script c'est que tu choisis l'extension de départ et d'arrivée.

Parce que si je fais direct de .txt à .TXT ca marche pas...

++

Lien vers le commentaire
Partager sur d'autres sites

Merci a tous pour vos reponse.

Ce matin je reprends tout a zero et je vois enfin a quoi correspond le %1 ce qui fait naitre en moi un sentiment de boulay atttiude.

En fait en tapant set /p oldext on affiche a l'ecran "1" et on enregistre la valeur tapée dans "oldext". (pour l'info on fait du script en mode console donc on a pas une belle interface ^^)

Voila ce soir j'irai me coucher paisiblement XDD

Merci encore a tous !

Lien vers le commentaire
Partager sur d'autres sites

Y'a des interfaces qui déchirent pourtant, en console ! Mais sous Windows c'est un peu plus tendu à ma connaissance. Si tu veux rigoler du côté linuxien, regarde par exemple :

- tmsnc (MSN en ligne de commande)

- lynx (navigateur web) ou links2

- ncurse (lecteur de musique)

- mplayer (lecteur multimédia te permettant même de regarder des vidéos, soit en vrai mode graphique directement dans la ligne de commande, soit carrément en ASCII en lui passant le paramètre -vo caca)

- nano, wim, emacs (quelques éditeurs de texte basiques, les deux derniers présentant pas mal d'options dont des intégrations de plugins ou même de jouer à Tetris)

- les jeux en mode texte

etc. :)

Lien vers le commentaire
Partager sur d'autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
 Share