あるコマンドラインからの出力を1行ずつ別のコマンドに使用するには?|
パイプ表記を使用してこれを行う方法を知っていますが、これは単一のコマンドで出力全体を消費します。一行ずつやりたいのですが… and を組み合わせなければならないようですが|
よくxargs
わかりません。
redis-cli keys \* | redis-cli get [key would go here]
答え1
これパラメータ正解は:
redis-cli keys \* | xargs -L 1 redis-cli get
答え2
各行にwhileループを使用します。
redis-cli-keys \* | while read key; do redis-cli get "$key"; done
答え3
完全性のために、for
ループのバリエーションは次のとおりです。
$ for key in $(redis-cli-keys \*); do redis-cli get $key; done
メモ:$keys
スペースが含まれていない限り動作します。