Plusieurs actions dans un else ?
holybeer
Messages postés
383
Date d'inscription
Statut
Membre
Dernière intervention
-
holybeer Messages postés 383 Date d'inscription Statut Membre Dernière intervention -
holybeer Messages postés 383 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Une question toute bête, mais j'dois réaliser un petit script en batch. Je teste si un fichier est présent. Dans le cas contraire, je veux afficher un message d'erreur simple, et ensuite je ferme le programme.
En gros, ça fait ça if exist "monrepertoire" ( echo fichier bien installé ) else ( echo pas installé; exit )
Est ce que c'est possible ? J'ai pas vraiment trouvé.. donc je demande.
Merci !
Une question toute bête, mais j'dois réaliser un petit script en batch. Je teste si un fichier est présent. Dans le cas contraire, je veux afficher un message d'erreur simple, et ensuite je ferme le programme.
En gros, ça fait ça if exist "monrepertoire" ( echo fichier bien installé ) else ( echo pas installé; exit )
Est ce que c'est possible ? J'ai pas vraiment trouvé.. donc je demande.
Merci !
A voir également:
- Doriane vient d’ouvrir un restaurant à lyon. en plus des actions menées sur son site web, elle souhaite développer la visibilité de son restaurant. pour cela, elle peut utiliser différentes techniques.
- Comment ouvrir un fichier epub ? - Guide
- Site de telechargement - Accueil - Outils
- Site pour vendre des objets d'occasion - Guide
- Site pour partager des photos - Guide
- Comment ouvrir un fichier bin ? - Guide
4 réponses
Hello
alors ça fait un pitit moment que j'ai pas touché le batch mais il me semble que ça serait plus comme ça :
if exist 'tonrepertoire' goto :OK else goto :PASBON
:OK echo fichier bien installé
:PAS BON echo pas installé
je suis pas très sur au niveau de la prez , mais de souvenir c'est comme ça que je faisait dans mes batchs pour patcher un fichier déjà présent par exemple
alors ça fait un pitit moment que j'ai pas touché le batch mais il me semble que ça serait plus comme ça :
if exist 'tonrepertoire' goto :OK else goto :PASBON
:OK echo fichier bien installé
:PAS BON echo pas installé
je suis pas très sur au niveau de la prez , mais de souvenir c'est comme ça que je faisait dans mes batchs pour patcher un fichier déjà présent par exemple
J'ai trouvé cette syntaxe sur batcher.fr " IF EXIST nomfichier. (del nomfichier.) ELSE echo nomfichier. introuvable "
Problème, je vérifie si ça existe. S oui, je rentre dans la suite du chemin et fais mes actions, si non, je sors et j'affiche un message d'erreur.
Le goto est une sorte de pointeur non ? Je ne peux pas mettre un echo directement ?
ah oui aussi dernière chose, je peux pas aligner plusieurs commandes à la suite dans le if ou le else ? Parce que je vois pas trop comment faire pour dire, je rentre dans le repertoire, je supprime les fichiers déjà présent, puis je copie les bons fichiers. J'suis une grosse daube en batch Windows. J'ai touché un le bash, mais bon ..
Problème, je vérifie si ça existe. S oui, je rentre dans la suite du chemin et fais mes actions, si non, je sors et j'affiche un message d'erreur.
Le goto est une sorte de pointeur non ? Je ne peux pas mettre un echo directement ?
ah oui aussi dernière chose, je peux pas aligner plusieurs commandes à la suite dans le if ou le else ? Parce que je vois pas trop comment faire pour dire, je rentre dans le repertoire, je supprime les fichiers déjà présent, puis je copie les bons fichiers. J'suis une grosse daube en batch Windows. J'ai touché un le bash, mais bon ..
là tout de suite sincèrement j'ai pas le souvenir , ça fait trop longtemps ... quand je rentrerai du taf je t'enverrai le code que j'avais utilisé ( et qui marche très bien ) pour faire ce type de batch .
Oui le goto est un pointeur . Tu pourrais mettre des echo , c'est juste moins clair ( bon en même temps pour des batch si courts ça n'a peut être pas d'intérêt de faire un goto )
Et je comprends pas ta dernière question :(
Oui le goto est un pointeur . Tu pourrais mettre des echo , c'est juste moins clair ( bon en même temps pour des batch si courts ça n'a peut être pas d'intérêt de faire un goto )
Et je comprends pas ta dernière question :(
Salut, tu peux utiliser & pour concaténer deux commandes ;)
if exist fichier.truc action1 & action2 & action3
if not exist fichier.truc action4 & action5...
Autre possibilité :
if exist fichier.truc (
action1
action2
action3
) else (
action4
action5
...
)
if exist fichier.truc action1 & action2 & action3
if not exist fichier.truc action4 & action5...
Autre possibilité :
if exist fichier.truc (
action1
action2
action3
) else (
action4
action5
...
)
Si c'est si compliqué en batch, pourquoi ne pas chercher une manière productive de programmer ?
Quelqu'un qui veut faire ce que tu veux, il met 1 minute avec Python:
en Python 2.x
Quelqu'un qui veut faire ce que tu veux, il met 1 minute avec Python:
from os.path import isfile if isfile(chemin_de_fichier): action A action B action C else: action D action E print 'Le chemin spécifié est incorrect'
en Python 2.x
Merci.
Alors là je suis dépassé, mais je suis curieux.
Ton programme batch avec des if est-il destiné à être installé sur des postes clients pour tourner ensuite sur chacun des postes clients ? Ou bien est-il un programme qui se charge de transférer des caractéristiques de GPO vers des postes clients ?
Alors là je suis dépassé, mais je suis curieux.
Ton programme batch avec des if est-il destiné à être installé sur des postes clients pour tourner ensuite sur chacun des postes clients ? Ou bien est-il un programme qui se charge de transférer des caractéristiques de GPO vers des postes clients ?
Puisqu'il s'agit de démarrage et de Zimbra Desktop, je conclus que le script doit tourner sur des postes clients. Merci
Ceci dit, le lancement d'un programme au démarrage n'est pas obligé d'être effectué par AD, un raccourci placé dans le dossier C:\Documents and Settings\Admin\Menu Démarrer\Programmes\Démarrage peut le faire aussi, non ?
Dans ce cas, on peut aussi envisager placer un script Python ou de n'importe quel autre langage qui fera ce que tu veux faire.
Dans ton cas, ce n'est pas possible de faire ainsi ?
Ceci dit, le lancement d'un programme au démarrage n'est pas obligé d'être effectué par AD, un raccourci placé dans le dossier C:\Documents and Settings\Admin\Menu Démarrer\Programmes\Démarrage peut le faire aussi, non ?
Dans ce cas, on peut aussi envisager placer un script Python ou de n'importe quel autre langage qui fera ce que tu veux faire.
Dans ton cas, ce n'est pas possible de faire ainsi ?
" Ceci dit, le lancement d'un programme au démarrage n'est pas obligé d'être effectué par AD, un raccourci placé dans le dossier [..]"
J'ai oublié un détail. La GPO qui lance le script, et celle qui installe Zimbra Desktop sont différentes. Le script va se lancer à chaque démarrage, tandis que l'autre va n'installer qu'une seule fois le programme. Quand j'entends démarrage, c'est spécifique à AD. Tu peux initialiser un script soit au démarrage de la machine, ou soit à son extinction. Pas au sens menu démarrer. ;)
Qui plus est, pour lancer du python, j'ai besoin d'un client qui va compiler mon script. Il ne me semble pas que python est installé sur mes clients de un parce que ça ne leur sert strictement à rien, et de deux, ça me ferait une création supplémentaire de GPO. ;)
J'ai oublié un détail. La GPO qui lance le script, et celle qui installe Zimbra Desktop sont différentes. Le script va se lancer à chaque démarrage, tandis que l'autre va n'installer qu'une seule fois le programme. Quand j'entends démarrage, c'est spécifique à AD. Tu peux initialiser un script soit au démarrage de la machine, ou soit à son extinction. Pas au sens menu démarrer. ;)
Qui plus est, pour lancer du python, j'ai besoin d'un client qui va compiler mon script. Il ne me semble pas que python est installé sur mes clients de un parce que ça ne leur sert strictement à rien, et de deux, ça me ferait une création supplémentaire de GPO. ;)