Pb création de fichier en bash

Résolu
Bonjour,
voici mon pb:
lors que je fait:
grep -n "mots" monfichier.txt >>new.txt

le compilateur me retourne l'erreur suivant:
No such file or directory new.txt

or en bash les ">" permettent de rediriger un flux de donnée vers une sortie et de la créer si elle n'existe pas.

je suis assez bloqué.

NOTE: cette commande fonctionne très bien dans mon shell mais plus dans mon fichier scrip.

je comprend pas pourquoi.

Merci de bien vouloir me venir en aide.
Configuration: Windows XP
Internet Explorer 7.0

10 réponses

  1. bonjour,

    ..et en indiquant le chemin complet du fichier dans le script ?

    :-))
    0
    1. ça fonctionne pas non plus

      c'est que new.txt qu'il ne reconnait pas (normal il est pas encore créer et meme s'il l'est ça ne fonctionne pas :-( )
      j'ai éssaillé aussi en forcent la sortie vers un autre dossier.

      rien y fait pour l'instant
      0
      1. Bjr,
        Bizarre chez moi çà fonctionne...

        # cat monfichier.txt
        mot1
        mots2

        grep -n "mots" monfichier.txt >>new.txt

        # cat new.txt
        2:mots2

        # cat toto
        grep -n "mots" monfichier.txt >>new.txt

        chmod +x toto

        toto

        # cat new.txt
        2:mots2
        2:mots2

        Il a bien ajouté une ligne !

        C'est bien ce que tu veux faire ?
        Sinon précise, merci
        @+
        0
        1. oki voici le code

          #!/bin/bash

          grep -n SNMP X.txt | sed "s/:/\ /" | awk '{printf $1 "\n"}' >lignebon.txt

          len1=`awk END'{printf NR}' lignebon.txt`
          lignef=1
          while ( [ $lignef -ge 1 ] && [ $lignef -le $len1 ] )
          do

          lignelu=`awk -v l=$lignef 'NR==l{printf $1 "\n"}' lignebon.txt `

          lignef=$(( $lignef+ 1 ))
          echo $lignef
          ligned=$([ $lignelu - 5 ])
          echo $ligned

          `awk -v l=$ligned 'NR==l {printf $3 "\n"}' X.txt` >> IP_cisco_equipement.txt
          done
          0
          1. de même:

            #!/bin/bash

            >fichier.txt

            me retourne la même erreur!

            je ne sais pas d'où ça peut venir.
            :-((
            0
            1. Contributeur
              pas les droits d'écriture dans le rép. ?
              ls -ld . ; id -a
              0
              1. si je les ais puisque quand je le fait en direct dans un shell celà fonctionne très bien
                0
                1. Contributeur
                  que signifie en direct dans un shell ?
                  0
                  1. directement dans la fenètre de comande:

                    "le gros rectangle tous noir"
                    0