Pb création de fichier en bash

Résolu/Fermé
tania3 - 16 janv. 2008 à 12:18
 tania - 16 janv. 2008 à 17:18
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.
A voir également:

10 réponses

bob031 Messages postés 8158 Date d'inscription samedi 7 août 2004 Statut Membre Dernière intervention 1 septembre 2014 472
16 janv. 2008 à 12:19
bonjour,

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

:-))
0
ç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
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
bob031 Messages postés 8158 Date d'inscription samedi 7 août 2004 Statut Membre Dernière intervention 1 septembre 2014 472
16 janv. 2008 à 13:33
on peut voir le script ??

:-))
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
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
de même:

#!/bin/bash

>fichier.txt


me retourne la même erreur!

je ne sais pas d'où ça peut venir.
:-((
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
16 janv. 2008 à 15:15
pas les droits d'écriture dans le rép. ?
ls -ld . ; id -a
0
si je les ais puisque quand je le fait en direct dans un shell celà fonctionne très bien
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
16 janv. 2008 à 17:16
que signifie en direct dans un shell ?
0
directement dans la fenètre de comande:

"le gros rectangle tous noir"
0