首先,感谢您花时间查看该问题。
我有以下脚本:从 的数据库中选择一个 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)"