我有一个文本文件,我想在行的开头添加一个字符串,但是,它有特殊字符,sed 对此有所抱怨。
我收到的警告是:
sed: 1: "s/^/curl curliian.bxss ...": bad flag in substitute command: 'b'
所以我试图逃避这个点:
dirnamer="$(dirname $1 | sed 's/\./\\./g')"
这不起作用,所以我试图逃避b
,这也不起作用。是的,这就是我现在所做的:
sed -i '' "s/^/curl $dirnamer/g" ~/desktop/download
但由于特殊字符的原因,sed 似乎存在很多问题。有什么更好的方法呢?
答案1
这个 awk 命令工作正常。
awk '{print "curl $dirnamer|" $0;}'
或者之前对变量执行此操作:
sed 's/\/b/\\b/g' | sed 's/\/t/\\t/g'