Execution bash en C

Fermé
Pritax Messages postés 333 Date d'inscription mardi 12 juin 2012 Statut Membre Dernière intervention 26 février 2015 - 7 mai 2014 à 17:52
Pritax Messages postés 333 Date d'inscription mardi 12 juin 2012 Statut Membre Dernière intervention 26 février 2015 - 12 mai 2014 à 14:09
Bonjour,

j'execute un script bash qui créé un fichier via la commande
system("./getxml monLien");


seulement ça me met dans la console sh:1:not found

un peu d'aide svp

merci

2 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
8 mai 2014 à 12:58
Bonjour,

Ce n'est pas vraiment du C si tu appelles la commande system() pour exécuter un batch...
Sur quel OS es-tu ?
Peux-tu montrer ton batch en le mettant entre les balises <"code sh">ici tu mets ton code<"/code"> (sans les guillemets).
0
Pritax Messages postés 333 Date d'inscription mardi 12 juin 2012 Statut Membre Dernière intervention 26 février 2015 19
11 mai 2014 à 20:05
rm fichier1
rm fichier2

Wget http://URL.fr/fichier1.xml

If [ wc -c fichier1.xml | ' {print $1}' -eq 0]
then cat test>fichier2
Else
Cat fichier1.xml>fichier2
Fi

//wc -c regarde si le fichier1.xml est present
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
11 mai 2014 à 22:04
Simple question, pourquoi ne pas faire un .sh tout simplement ?
Ce batch fonctionne-t-il en console ?

Cdlt,
0
Pritax Messages postés 333 Date d'inscription mardi 12 juin 2012 Statut Membre Dernière intervention 26 février 2015 19
12 mai 2014 à 00:21
C'est un .sh

En console il fonctionne correctement
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
Modifié par fiddy le 12/05/2014 à 13:52
Ben si c'est un .sh, pourquoi tu ne mets pas l'extension .sh dans system() ?
De plus, pour que ce soit un vrai .sh, il manque le shebang : "#!/bin/sh" (à adapter). Comment l'appelles-tu en ligne de commande pour l'exécuter ?
Mais ce que je souhaitais savoir surtout, c'est pourquoi tu utilises un fichier "c" pour appeler ton batch ? Pourquoi ne pas appeler directement le batch ?
0
Pritax Messages postés 333 Date d'inscription mardi 12 juin 2012 Statut Membre Dernière intervention 26 février 2015 19
12 mai 2014 à 14:09
En effet, il y est , c'est un oubli lors du post ..

J'utilise un Bash car j'ai un prog c qui tourne et il recupere le contenu du fichier telecharger par le Bash . Peut etre qu'une librairie peut faire l'affaire , mais je trouvais ca simple en Bash
0