2010-11-14 46 views
2

J'utilise gnuplot à partir d'un script bash et je dois diviser les valeurs de deux colonnes:Comment manipuler les valeurs de colonne lors de l'utilisation de gnuplot à partir d'un script shell?

terrain "results.csv" en utilisant 1: ($ 4/6 $) notitle avec lp

Cela fonctionne très bien dans gnuplot mode interactif, mais quand appelé à partir d'un script, les valeurs de la colonne se mélangent avec les arguments de script bash ... Comment puis-je passer le col. valeurs du script?

+0

Comment appelez-vous gnuplot à partir de votre script? – Sean

Répondre

3

Cela dépend de la façon dont vous appelez gnuplot à partir de votre script, comme Sean l'a demandé dans les commentaires.

Quelque chose comme $4 sera développé sauf s'il est entre guillemets simples, donc c'est une option. Partout ailleurs, vous devrez échapper le :

# print first argument 
echo $1 

# print literally $1, a few ways 
echo '$1' 
echo "\$1" 
echo \$1 
+0

Merci Jefromi, d'échapper à \ travaillé! S'échapper avec "$ 1" produit des valeurs étranges. Vous m'avez beaucoup aidé avec votre réponse rapide :) – ana

+0

@ana: C'était une faute de frappe dans l'exemple. Dans le texte, j'ai dit que seules les guillemets simples le protégeraient de l'expansion des paramètres; les guillemets doubles ne le font pas, donc vous devez y échapper avec une barre oblique inversée aussi. – Cascabel