我需要在file.txt中的第3行插入一行。为此我使用sed
。我需要在文件中插入以下文字:
Location=\home\user\Files\myfile.txt
要插入上面一行,我正在做:
sudo sed -i '3iLocation=\home\user\Files\myfile.txt' file.txt
此命令正在运行,但插入的文本为:
Location=homeuserFilesmyfile.txt
为什么会这样。我怎样才能加入\
。
由于
答案 0 :(得分:2)
你需要使用反斜杠\
来解释它。
要附加没有换行符的行:
sed -i '3 s/$/Location=\\home\\user\\Files\\myfile.txt/' file.txt
$
- 正则表达式锚点,指向字符串的结尾在 第3行之前插入特定行 :
sed -i '3iLocation=\\home\\user\\Files\\myfile.txt/' file.txt
答案 1 :(得分:1)
使用转义字符'\'。
sed -i'3iLocation = \ home \ user \ Files \ roamingfile.txt'file.txt