텍스트 파일이 있고 줄 시작 부분에 문자열을 추가하고 싶지만 특수 문자가 있고 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'