2011-11-10 71 views
3

當我將echo傳遞給redis客戶端時,出現錯誤。將數據傳輸到redis

[[email protected] ~]$ echo "abc43345" | redis-cli set my_passwd2 
(error) ERR wrong number of arguments for 'set' command 

但是,以下按預期工作。

[[email protected] ~]$ redis-cli set my_passwd2 `echo "abc43345"` 
OK 

有沒有辦法讓第一個例子工作?

+1

'redis的-cli'期待在命令行上的參數,而不是在'stdin'來實現。用很多其他命令行應用程序來做到這一點的方法是指定一個短劃線'-',表示該命令行參數應該從'stdin'中讀取。我不知道'redis-cli'是否支持,並且現在沒有安裝它來檢查。 –

回答

8

它可以實際使用 「-x」 標誌

echo "abc43345" | redis-cli -x set my_passwd2

+0

redis-cli --pipe也是一個選項。請參閱:http://redis.io/topics/mass-insert – Homer6