Sed如果在添加文件时以“ v”开头,则它会截断第一个字符
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sed如果在添加文件时以“ v”开头,则它会截断第一个字符相关的知识,希望对你有一定的参考价值。
我陷入了我的生产代码之一,试图在文件的开头附加一些内容,如果我要附加的内容以“ v”开头,则会被截断。
复制步骤:
$ cat text.txt
Kubernetes document
$ var1=version1
$ sed -e "s/^/\\${var1} /" text.txt
输出:
ersion1 Kubernetes document
所需的输出:
version1 Kubernetes document
答案
您使用反斜杠是错误的。检查此:
var1=version1
echo "s/^/\\${var1} /"
您的转义导致以下sed命令:
s/^/\version1 /
[\v
是一个特殊的char:垂直选项卡,在终端上不可见。
简单的解决方案是根本不逃脱,将变量插值到双引号的字符串中根本不需要:
sed -e "s/^/\\${var1} /" text.txt
以上是关于Sed如果在添加文件时以“ v”开头,则它会截断第一个字符的主要内容,如果未能解决你的问题,请参考以下文章