여러 공백을 추가하는 Sed 정규식

여러 공백을 추가하는 Sed 정규식

sed 문에 여러 공백을 추가하는 깔끔한 방법을 찾고 있습니다. 명령문에서 리터럴 공백을 사용하는 것은 유효합니다.

sed -i 's/this is a test/\n          and so is this/' test_file.txt

하지만 정규식을 사용하여 이 작업을 수행하는 더 정확한 방법이 있기를 바랍니다. 감사해요!

답변1

bash또는 를 사용하면 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

관련 정보