IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

Problème echo -n


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 2
    Par défaut Problème echo -n
    while(test $# -ne 1)
    do
    #supprime les "-" s'il y a
    echo "2:$1:2";
    mot=`echo -- $1 | sed "s/-//"`;
    echo "1:$mot:1";
    verifOption $mot;
    echo $?;
    if(test $? -eq 1) then
    if(test $# -eq $max) then
    options=$mot;
    else
    options=`echo $options | sed "s/$options/$options $mot/"`;
    fi
    fi
    shift;
    done
    Mon problème est le suivant
    Lorsque mon $1 est égal à -R ou n'importe quoi
    En revanche si $1 est égal à -n ou -e problème, $mot ne vaut plus rien
    Je sais pourquoi; le echo interprete le -n ou le -e comme étant une option
    J'ai donc voulu ajouter un -- devant mais cela ne marche pas plus

    Si je fais un echo -- -n il m'affiche
    -- -n, or moi je voudrais juste -n

    Si quelqu'un peut m'aider

  2. #2
    Membre chevronné Avatar de alexp
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    459
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 459
    Par défaut
    dans ton parametre, au lieu de mettre -n essaye \-n ou alors '-n'

  3. #3
    Membre émérite Avatar de jmelyn
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2007
    Messages
    703
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Septembre 2007
    Messages : 703
    Par défaut
    Bonsoir,

    La commande echo n'accepte pas l'argument '--'. La seule manière de faire est de mettre un opérande (quelque chose à afficher) avant $1 pour que ce dernier ne soit pas pris pour une option. En effet, les options sont toujours avant les opérandes. Dans le cas présent, c'est ennuyeux.

    Il y a cependant une autre manière de faire: mot=${1#-}. La façon d'écrire le script ressemble à du C, il pourrait être amélioré.

Discussions similaires

  1. Problème echo avec php
    Par lau17 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 02/02/2012, 09h09
  2. [PHP 5.3] script php problème echo
    Par clades dans le forum Langage
    Réponses: 2
    Dernier message: 11/01/2011, 13h09
  3. Problème echo select
    Par hair_peace dans le forum Langage
    Réponses: 19
    Dernier message: 29/10/2008, 23h53
  4. [MySQL] problème echo $data[' xxxx ']
    Par vincedjs dans le forum PHP & Base de données
    Réponses: 21
    Dernier message: 03/03/2006, 11h07
  5. Problème sur un echo
    Par bast dans le forum ANT
    Réponses: 1
    Dernier message: 10/11/2004, 14h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo