J'arrive même pas à faire marcher mon script shell de 3 lignes !

J'arrive même pas à faire marcher mon script shell de 3 lignes ! - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 12-03-2011 à 23:25:50    

Salut,
 
J'ai fait un petit script shell mais pas moyen de le faire marcher  :fou:  
Le voici :
 


#!/bin/csh
echo "script"
if ($# >= 1 && $1 == "-param1" )
 echo "param1"
fi


 
Mais impossible de faire marcher le script. J'ai tout essayé : avec des endif, avec ou sans guillemets, avec des = ou ==, mais ça ne marche pas.
Bon ça fait au moins 4 heures que j'essaie de faire marcher ce code de 3 lignes  [:bentley]  je commence à devenir fou !

Reply

Marsh Posté le 12-03-2011 à 23:25:50   

Reply

Marsh Posté le 13-03-2011 à 15:17:35    

if then non ?
 
note que je ne connais pas la syntaxe d'un C shell


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
Reply

Marsh Posté le 13-03-2011 à 17:02:28    

suffit de chercher la syntaxe exacte :  
http://www.shellunix.com/csh.html#if   [:ltail]  
 
Sinon :  
  - le shebang est bien en première ligne ?
  - les privilèges du fichier permettent-ils l'exécution ?


Message édité par o'gure le 13-03-2011 à 17:04:02
Reply

Marsh Posté le 13-03-2011 à 18:06:17    

oui j'avais bien essayé avec le then (que j'ai oublié de mettre dans mon précédent post), mais ça ne marche pas non plus.

Reply

Marsh Posté le 13-03-2011 à 18:23:51    

"Ça marche pas", c'est flou. C'est quoi le message d'erreur ? Il se lance ou pas ?


---------------
Doucement le matin, pas trop vite le soir.
Reply

Marsh Posté le 13-03-2011 à 22:28:16    

Bonsoir.
 
C'est pas du csh mais en sh je fais comme ça.
 


#!/bin/sh
 
if [ $# -ge 1 ] && [ "$1" = "param1" ]
 then
  echo "param1"  
fi

Reply

Marsh Posté le 15-03-2011 à 01:24:21    

bon j'ai enfin trouvé !!!
Le script plantait quand le paramètre 1 commençait par un tiret.
En enlevant le tiret ça marche !
 
Mais du coup comment faire si je veux des paramètres qui commencent par un tiret ?

Reply

Marsh Posté le 15-03-2011 à 07:53:39    

Tu es sur que ton CShell ne sait pas récupérer les paramètres de la ligne de commande ?


---------------
Décentralisons Internet-Bépo-Troll Bingo - "Pour adoucir le mélange, pressez trois quartiers d’orange !"
Reply

Marsh Posté le 15-03-2011 à 08:05:32    

avec getopt ?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed