我正在寻找一种干净的方法来向 sed 语句添加多个空格。在语句中使用文字空格是有效的:
sed -i 's/this is a test/\n and so is this/' test_file.txt
但我希望有一种更精确的方法来使用正则表达式来完成此任务。谢谢!
答案1
使用bash
or zsh
,您可以使用以下方法在变量中获取任意数量的空格:
printf -v spc %10s
sed -i "s/this is a test/&\n${spc}and so is this/" test_file.txt
使用zsh
,您还可以执行以下操作:
sed -i "s/this is a test/&\n${(l:10:)}and so is this/" test_file.txt