xxx 我想这样做: printf "%s (%s)\n" `grep '^-6ren">
gpt4 book ai didi

linux - printf 行为异常

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:25:57 25 4
gpt4 key购买 nike

我在 bash 提示符下得到了一些令人惊讶的结果。

这是一些数据:

echo "version = blahblah" > xxx

我想这样做:

printf "%s (%s)\n" `grep '^version =' xxx` "something"

我期望的是:

version = blahblah (something)

相反,我得到:

version (=)
blahblah (something)

有人可以解释为什么我会收到这个吗?

最佳答案

使用 $(...) 进行命令替换,您必须引用它:

printf "%s (%s)\n" "$(grep '^version =' xxx)" "something"

不引用 printf 会将 grep 命令的空格分隔输出视为 printf 的不同参数。

BASH FAQ: Why is $(...) preferred over backticks?

关于linux - printf 行为异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56698392/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com