commandes bash: assembler deux commandes.

commandes bash: assembler deux commandes. - Linux et OS Alternatifs

Marsh Posté le 21-03-2005 à 16:27:13    

Bonjour tlm
 
La commande /home/user/karamba/kweather/scripts/weather.sh wind | awk '{print $1}' m'affiche la vitesse du vent, par exemple 4 (ou autre mais on s'en fout c'est juste un exemple).
Mais c'est en Miles/hre.
J'aimerais inclure une convertion en km/h: echo 1.6*4|bc me renvoie bien 6.4 donc ok, le problème est que je n'arrive pas à assembler ces deux commandes:
$ echo 1.6*/home/user/karamba/kweather/scripts/weather.sh wind | awk '{print $1}'|bc ou
$ echo /home/user/karamba/kweather/scripts/weather.sh wind | awk '{print $1}'*1.6|bc
j'essayé 5 ou 6 trucs qui me passaient par la tête mais ca me renvoie toujours:
(standard_in) 1: parse error
(standard_in) 1: parse error

 
Comment je pourrais faire pour ajouter la fonction calculette dans le renvoi de /blabla/weather.sh wind?

Reply

Marsh Posté le 21-03-2005 à 16:27:13   

Reply

Marsh Posté le 21-03-2005 à 16:30:04    

modifie le truc à l'intérieur du script, tu gagneras ton temps :o


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Marsh Posté le 21-03-2005 à 16:34:00    

Tu as sans doute pas mal de chose à apprendre sur l'intépréteur de commande...
Tu essayes de récupérer le résultat d'une commande, il faut donc l'éxécuter..
echo X*$(ma commande)
Sachant qu'une multiplication se fait plutôt en utilisant expr ou let (selon le calcul) plutôt que echo.
Je te renvoie au manuel de la commande expr et de celui de ton interpréteur de commande pour let.

Reply

Marsh Posté le 21-03-2005 à 16:36:06    

Le script ressemble à ca:
 

Citation :

#!/bin/bash
 
station=`dcop KWeatherService WeatherService listStations`
 
case $1 in
 
 picture )
  echo "`dcop KWeatherService WeatherService iconFileName $station`"
 ;;
 
 city )
  echo "`dcop KWeatherService WeatherService stationName $station`"
 ;;
 
 wind )
  echo "`dcop KWeatherService WeatherService wind $station`"
 ;;
 
 temp )
  echo "`dcop KWeatherService WeatherService temperature $station`"
 ;;
 
 pressure )
  echo "`dcop KWeatherService WeatherService pressure $station`"
 ;;
 
 humidity )
  echo "`dcop KWeatherService WeatherService relativeHumidity $station`"
 ;;
 
esac


 
Alors si tu peux m'expliquer comment le modifier.... :ange:

Reply

Marsh Posté le 21-03-2005 à 18:20:30    

a vu de nez
 
echo 4*`/home/user/karamba/kweather/scripts/weather.sh wind | awk '{print $1}'` | bc


---------------
:wq
Reply

Marsh Posté le 21-03-2005 à 19:36:48    

M300A a écrit :

a vu de nez
 
echo 4*`/home/user/karamba/kweather/scripts/weather.sh wind | awk '{print $1}'` | bc


Bingo![:alphat]
Il me manquait les `
Merci M300A  :)  
 

Reply

Marsh Posté le 22-03-2005 à 08:28:28    

De rien :jap:
 
Ca fait plaisir au bout d'un an de pouvoir inverser al tendance et d'aider les autres ;)

Reply

Marsh Posté le 22-03-2005 à 16:15:50    

La réponse était aussi dans mon post, dommage que je t'ai laissé chercher un peu plus loin :)

Reply

Sujets relatifs:

Leave a Replay

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