Opérateur dans boucle if

Bonjour,
Pour un script bash
je voudrai définir grace à un opérateur dans une boucle if si un fichier existe ou n'existe pas. Ce qui me manque c'est l'opérateur.

if [ -? /mon/chemin]

3 réponses

  1. Contributeur
    Mdr, moi j'aurai dit l'inverse (le cas échéant) " batch ? pas plutôt bash ?".

    Bref, blague à part, si tu fait un "help [" il te dit de faire un "help test" et là :
    -a FILE true if file exists.
    pareil avec e ou mieux '-f' qui évite certains problèmes si le fichier est spécial.
    0
    1. euhh ok... je vois pas en quoi ça te fais rire tant que ça. il veut savoir si un fichier existe avec un if en bash (ce que je connais pas). Je suis pas programmeur. Je croyais qu'il parlait dun fichier .bat. on peut faire ça en 5 sec en cmd, c'est tout
      0
  2. Modérateur
    Où est ton problème?
    johand@osiris: ~/tmp $ cat test.sh 
    #!/bin/sh 
    if [ -e brol ] ;then 
        echo "OK" 
    else 
        echo "Sorry" 
    fi 
    johand@osiris: ~/tmp $ touch brol  ; ./test.sh  
    OK 
    johand@osiris: ~/tmp $ rm brol  ; ./test.sh  
    Sorry


    Gates gave ^H sold you the windows.
    GNU gave us the whole house.(Alexandrin)
    0
    1. heh? bash? tu voudrais pas dire "batch" par hasard?

      si oui, essaie

      if exist c:\XXXX\ton_fichier then
      ce que tu veux mettre comme code
      else 'si le fichier n'existe pas
      ton code
      end if
      -2