「ANSI-C」で変数から改行文字を渡すには?

「ANSI-C」で変数から改行文字を渡すには?

このコードを実行すると

#!/bin/bash

set -x

http --json http://example.com \
    value=$'hello\r\n\r\nworld'

stdoutにはキャリッジリターンが2つあります。value

http --json http://example.com 'value=hello

world'

しかし、value変数に文字列がある場合、標準出力から同じ文字列を取得する方法が見つかりません。たとえば、私が実行した場合

#!/bin/bash

set -x

variable="hello\r\n\r\nworld"

http --json http://example.com \
    value=$''"$variable"''

改行はありませんが、\r\n\r\n文字はありません。

http --json http://example.com 'value=hello\r\n\r\nworld'

変数内の値から始まる行を囲む方法は何ですか?

変更することはできませんが、variable="hello\r\n\r\nworld"実行中のコマンドとコードの間にコードを追加できます。

ベストアンサー1

それは私には違います。

#!/bin/bash

set -x

variable="hello\r\n\r\nworld"

http --json http://example.com \
    value="${variable@E}"

おすすめ記事