Sed regex para adicionar vários espaços

2

Estou procurando uma maneira limpa de adicionar vários espaços a uma instrução sed. Ter espaços literais na instrução funciona:

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

mas eu estava esperando por uma maneira mais precisa de conseguir isso com o regex. Obrigado!

    
por GreNIX 25.07.2018 / 15:34

1 resposta

3

Com bash ou zsh , você pode obter um número arbitrário de espaços em uma variável com:

printf -v spc %10s
sed -i "s/this is a test/&\n${spc}and so is this/" test_file.txt

Com zsh , você também pode fazer:

sed -i "s/this is a test/&\n${(l:10:)}and so is this/" test_file.txt
    
por 25.07.2018 / 15:43

Tags