![문제의 스크립트: buku 쿼리, fzf를 통해 선택한 다음 (다시) buku를 사용하여 인쇄](https://linux55.com/image/226976/%EB%AC%B8%EC%A0%9C%EC%9D%98%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%3A%20buku%20%EC%BF%BC%EB%A6%AC%2C%20fzf%EB%A5%BC%20%ED%86%B5%ED%95%B4%20%EC%84%A0%ED%83%9D%ED%95%9C%20%EB%8B%A4%EC%9D%8C%20(%EB%8B%A4%EC%8B%9C)%20buku%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%EC%9D%B8%EC%87%84.png)
먼저, 시간을 내어 이 문제를 검토해 주셔서 감사합니다.
다음 스크립트가 있습니다. 데이터베이스에서 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)"