これは、温度センサーから値を読み取り、それらを1行に表示する私のBashスクリプトです。配列の要素をカンマで区切ります(例:[1,2,3,5]
)。次に、この文字列で別のファイルに存在する行を置き換えます。私の配列をBashの文字列に変換するには?
temp.sh
:
function join()
{
local IFS="$1"
shift
echo "$*"
}
その後、我々は呼び出すことができます:
READINGS="[$(join "," "${field[@]})"]"
を
#!/bin/bash
for ((i=0 ; 12 - $i ; i++))
do
x=$(cat /sys/bus/w1/devices/28-0000075292ed/w1_slave | grep "t=" | awk -F "t=" '{print $2/1000}')
field[$i]=$x
echo "${field[$i]}"
done | column
が 'ここで何をやってCOLUMN'です発見したありがとう! 'echo'は与えられた行に複数の値を出力しますか?このコマンドの出力はどういうものですか? 'column'を使わないとどうなりますか? –
ループを通過するたびに同じデバイスをサンプリングするのはなぜですか? –
@EtanReisner私は、温度を何度も取得し、その値などを平均すると仮定しています。これらのセンサの多くは、間に眠らずに何度も何度も読まれるのが好きではありません。 – Will