我想使用 Bash 大括号扩展并得到双引号之间引用的最终结果:
seq
我仅通过使用以下方法才能获得该结果:
echo '"'$(seq 1 5)'"';
输出(这是预期的输出):
"1 2 3 4 5"
但是当我仅尝试括号扩展时:
echo '"'{1..5}'"'
但不幸的是,这会导致:
"1" "2" "3" "4" "5"
是否可以得到与上面相同的结果(使用seq
命令)但仅使用 bash 大括号扩展(不使用外部命令)?
答案1
像这样吗? (与 Bash 一起echo
)
$ echo -n \"; echo -n {1..5}; echo \"
或者(假设默认IFS
):
$ quoteme() { printf \"; printf "$*"; printf '"\n'; }
$ quoteme {1..5}
"1 2 3 4 5"