SHELLスクリプトで半角スペースを扱いたいからダブルクオーテーションで囲ってるのに配列がダブルクオーテーション内の半角スペースで区切られるのなんで…

jqで抽出した文字列をそのまま配列として扱いたいんだけど("This is a pen" "B" "C")っていう内容で
"this
is
a
pen"
"B"
"C"
として扱われるんだけど

Follow

@Yohei_Zuho たぶん標準的なシェルでは、文字列をリストに分けるときの区切り文字が空白とタブと改行になってたと思います。シェル変数IFSに区切り文字を並べて設定することで動作を変えられます。ちょっと今試せないのですが、IFS='$'とかで改行文字だけにできるので、配列要素に改行が含まれないなら、jqで配列を改行区切りで出力して(どうやるんだっけ)あげれば配列の要素ごとの文字列のリストに分けられるかもです。

· · SubwayTooter · 1 · 1 · 2

@zundan できました!ありがとうございます!!!

Sign in to participate in the conversation
zundon

Zundon is a single user instance as home of @zundan as well as a test bed for changes of the code.