kakashi. Posté(e) 18 mars 2008 Share Posté(e) 18 mars 2008 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 More sharing options...
Miles Prower Posté(e) 18 mars 2008 Share Posté(e) 18 mars 2008 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 More sharing options...
deagle Posté(e) 18 mars 2008 Share Posté(e) 18 mars 2008 %1 et %2 c'est pas des variables pour les arguments du script ? genre on tape script TXT txt, dans %1 on aura TXT et dans %2 on aura txt Lien vers le commentaire Partager sur d'autres sites More sharing options...
kakashi. Posté(e) 18 mars 2008 Auteur Share Posté(e) 18 mars 2008 soit mais ce qui m'etonne c'est que apres on utilise plus %1 et %2... Lien vers le commentaire Partager sur d'autres sites More sharing options...
Miles Prower Posté(e) 18 mars 2008 Share Posté(e) 18 mars 2008 Oui, puisqu'on utilise oldext et newext dans lesquelles les valeurs ont été copiées... Lien vers le commentaire Partager sur d'autres sites More sharing options...
kakashi. Posté(e) 18 mars 2008 Auteur Share Posté(e) 18 mars 2008 mais ca ne marcherait pas en tapant juste set oldext? Lien vers le commentaire Partager sur d'autres sites More sharing options...
Thony Posté(e) 18 mars 2008 Share Posté(e) 18 mars 2008 je connais pas non plus ce language mais je suppose que non ça ne fonctionnerai pas pcq c'est justement ce qui te permet de garnir ta variable oldext ++ Lien vers le commentaire Partager sur d'autres sites More sharing options...
Genkryo Posté(e) 18 mars 2008 Share Posté(e) 18 mars 2008 sous linux, tu tape dans la console : ls -d *.TXT | sed 's/\(.*\).txt$/mv "&" "\1.txt"/' | sh Lien vers le commentaire Partager sur d'autres sites More sharing options...
Miles Prower Posté(e) 18 mars 2008 Share Posté(e) 18 mars 2008 Ça a de la gueule quand même. Mais je crois que tu y vas un peu fort, on débute là, on tente pas la simplification en une ligne Lien vers le commentaire Partager sur d'autres sites More sharing options...
schumpopo Posté(e) 18 mars 2008 Share Posté(e) 18 mars 2008 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 More sharing options...
emulator-gt Posté(e) 18 mars 2008 Share Posté(e) 18 mars 2008 (modifié) Pour ne pas me prendre la tete : pour renommer d'un .txt à .TXT ren *.txt *.txt2pauseren *.txt2 *.TXT Modifié 18 mars 2008 par emulator-gt Lien vers le commentaire Partager sur d'autres sites More sharing options...
schumpopo Posté(e) 18 mars 2008 Share Posté(e) 18 mars 2008 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 More sharing options...
emulator-gt Posté(e) 19 mars 2008 Share Posté(e) 19 mars 2008 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 More sharing options...
schumpopo Posté(e) 19 mars 2008 Share Posté(e) 19 mars 2008 oui exact Windows est pas case sensitive. Au temps pour moi. Lien vers le commentaire Partager sur d'autres sites More sharing options...
kakashi. Posté(e) 19 mars 2008 Auteur Share Posté(e) 19 mars 2008 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 More sharing options...
Miles Prower Posté(e) 19 mars 2008 Share Posté(e) 19 mars 2008 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 More sharing options...
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant