まず、時間をかけてこの問題を確認していただきありがとうございます。
次のスクリプトがあります。データベースでID配列を選択し、buku
以前buku
に選択したIDを使用して情報を再印刷します。
selected_ids=$(buku --print --format 3 | fzf | cut --fields=1)
&& test="$(buku --print $selected_ids --format 10)"
問題:選択するとtest
()の値が空です。echo $test
複数の項目通過するfzf
。
私は配管を含むいくつかの解決策を試しましたtr
。
selected_ids=$(buku --print --format 3 | fzf | cut --fields=1 | tr '\n' ' ' | xargs)
&& test="$(buku --print $selected_ids --format 10)
しかし、役に立たない。
私の直観によると、問題は$selected_ids
文字列全体として解釈される可能性があります。なぜ?私がfzf
via だけを選ぶ時ワンアイテム、値に$test
選択した値が含まれています。
どんな提案がありますか?
答え1
@steeldriver さんの提案のおかげで答えを見つけました。子孫のためにここに投稿してください。
selected_ids=$(buku --print --format 3 | fzf | cut --fields=1)
&& test="$(buku --print ${=selected_ids} --format 10)"