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 :

conservation des espaces en csh


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 33
    Par défaut conservation des espaces en csh
    Bonjour,

    J'ai besoin d'écrire dans un fichier texte en respectant exactement la syntaxe suivante :
    " var1 var2 var3" (deux espaces entre chaque variable)
    sachant que si la variable est négative il ne faut qu'un seul espace :
    " var1 -var2 var3"

    pour l'affectation de mes variable j'utilise :

    set var1 = " $1" ou si la variable est négative " -$1"

    je fais ensuite
    echo "$var1$var2$var3" > fichier

    le souci est que pour une raison que j'ignore je n'ai jamais qu'un espace là où il m'en faudrait deux...

    (J'utilise le C shell)

    J'apprécierai grandement un coup de main !!

    Merci!

  2. #2
    Membre extrêmement actif
    Avatar de Golgotha
    Homme Profil pro
    Full-stack Web Developer
    Inscrit en
    Août 2007
    Messages
    1 387
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Full-stack Web Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2007
    Messages : 1 387
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    Je ne sais pas si j'ai bien compris, mais, dans ton set var1 = " $1", il ne devrait pas y avoir deux espaces ? je n'en vois qu'un.
    Consultant et développeur full-stack spécialiste du Web
    faq jQuery - règles du forum - faqs web

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 33
    Par défaut
    oui en effet j ai oublié un espace lorsque que j'ai écrit le message... pas dans le code cependant, le problème était ailleurs, j ai pu le contourner mais je tombe à nouveau sur un problème similaire :

    j ai un fichier en entrer formaté comme suit :

    1 2 3 4
    10 11 12 13

    avec 7 espaces si le nombre est à un chiffre, 6 espaces si le nombre est a deux chiffres, 5 si le nombre est a trois chiffres, etc (edit : lorsque je poste le message les espaces superflus sont supprimés d'où le nombre d'espaces erronés dans mon post en fait même souci que dans mon script)

    j'ai besoin de recopier exactement ces lignes sachant que dans le script j'analyse chaque ligne une après l'autre pour faire des modifications dans certains cas

    j'ai essayé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    set ligne = 'sed -n "$i p" $fichier'
    echo "$ligne" > $fic_sortie
    (je n'utilise pas les bon guillemets ici car j'envoie le message depuis mon téléphone, désolé)


    le souci est qu'avec ce procédé je n'ai qu'un espace entre chaque nombre au lieu de 7, 6 ou 5...
    idem avec la commande awk

    j'espère que je suis assez clair :/

    si quelqu'un a une solution, merci d avance!!

  4. #4
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 658
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 658
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    set ligne = "`sed -n ${i}p $fichier`"
    echo "$ligne"
    apparemment dans csh, contrairement à bash, les backticks ` ne conservent pas les espaces sans guillemets
    ...
    ?
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 33
    Par défaut
    merci pour ta solution, ca marche a la perfection

Discussions similaires

  1. [XSL-FO] Conserver des espaces
    Par henri93 dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 11/09/2012, 08h19
  2. [Débutant] Conserver l'affichage des espaces
    Par wolfpaw dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 02/04/2008, 15h59
  3. [debutant] preservation des espace dans un fichier xml
    Par Eric B dans le forum XML/XSL et SOAP
    Réponses: 7
    Dernier message: 03/09/2003, 09h43
  4. Réponses: 2
    Dernier message: 26/02/2003, 15h18
  5. Réponses: 2
    Dernier message: 06/12/2002, 07h50

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