誰かが私のsambaサーバーからデータをストリーミングしているかどうかを確認するスクリプトを書いておきたいと思います。そのために、私はこのようなスクリプトを作ってみた:bashの変数をstdoutに出力しないで
$ cat /home/ron/scripts/keepup.sh
#!/bin/bash
exec=`nethogs -t -c 1| awk '/smbd/ {print $2}'`
sent=$exec
echo "result: "$sent
sent="($sent+0.5)/1" | bc
echo "rounded: "$sent
if [[ $sent -gt 0 ]]
then
echo "music is playing"
else
echo "quiet"
fi
が、私は得る:
Waiting for first packet to arrive (see sourceforge.net bug 1019381)
result: 6.73438
rounded: 6.73438
/home/ron/scripts/keepup.sh: line 10: [[: 6.73438: syntax error: invalid arithmetic operator (error token is ".73438")
quiet
、それは明らかに真の結果、「6.73438」を計算する必要がありますが。私の丸めが正しく機能していないようです。私は周りのグーグルでは、エコーまたはprintfを使用して答えが見つかりましたが、それは丸ごとの結果をif条件にフィードしたいので、必要なものはnptです。