0
Redis-benchmark sonucunu kabuk betiğinde ayrıştırmaya çalışıyorum, betiği yazarım ama yürütemedim.Bash: redis-benchmark sonucunu var oluşturmak için değişken garip dizgi oluştur
Çevre
$ bash --version
GNU bash, version 4.2.24(1)-release (x86_64-pc-linux-gnu)
$ cat /etc/issue
Ubuntu 12.04 LTS \n \l
$ dpkg -l |grep redis
2:2.8.19-rwky1~precise
$ cat demo.sh
OUTPUT=`redis-benchmark -n 1000 -r 100000 -d 32 -c 30 -t GET -p 6379 -q |grep 'per second'`
R=$(echo "$OUTPUT" | cut -f 1 -d'.')
S=$(echo $R | awk '{print $2}')
echo $S
Kabuk ayıklama gösterisi bazı bilgiler karıştırırlar.
$ bash -x demo.sh
++ redis-benchmark -n 1000 -r 100000 -d 32 -c 30 -t GET -p 6379 -q
++ grep 'per second'
GET: 166666.67 requests per second'
GET: 166666.67 requests per second'
++ cut -f 1 -d.
GET: 166666'an
++ echo GET: $'-nan\rGET:' 166666
++ awk '{print $2}'
+ S=$'-nan\rGET:'
+ echo $'-nan\rGET:'
GET:
Bir şey özlüyor muyum?
Yorumlar
,
$ redis-benchmark -n 1000 -r 100000 -d 32 -c 30 -t GET -p 6379 -q |grep per > todo
$ vim todo
GET: -nan^MGET: 166666.67 requests per second
Teşekkürler, girişi düzeltmek ne anlama geliyor? – linbo
giriş, redis-benchmark –
çıktısının anlamı, sanırım bu redis-benchmark hatası – linbo