gpt4 book ai didi

linux - 带有文字字符串的 sed——不是输入文件

转载 作者:IT老高 更新时间:2023-10-28 12:29:06 26 4
gpt4 key购买 nike

这应该很简单:我想针对文字字符串而不是输入文件运行 sed。如果您想知道为什么,例如编辑存储在变量中的值,而不一定是文本数据。

当我这样做时:

sed 's/,/','/g' "A,B,C"

其中 A,B,C 是我要更改为 A','B','C 的文字

我明白了

Can't open A,B,C

好像它认为 A,B,C 是一个文件。

我尝试通过管道将其用于 echo:

echo "A,B,C" | sed 's/,/','/g' 

我得到一个提示。

正确的做法是什么?

最佳答案

你有一个单引号冲突,所以使用:

 echo "A,B,C" | sed "s/,/','/g"

如果使用 ,你也可以这样做(<<<here-string):

sed "s/,/','/g" <<< "A,B,C"

但不是

sed "s/,/','/g"  "A,B,C"

因为 sed期望文件作为参数

编辑:

如果您使用 或任何其他:

echo string | sed ...

关于linux - 带有文字字符串的 sed——不是输入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13055889/

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