br comando para substituir / por; apenas para condição

1

Por favor, diga-me como substituir / por ; neste:

ASAL
/*
 * VIEW: VINAME1 
 */
Create view viewname
/
test

Eu preciso converter apenas o lone / , então a saída deve ser assim:

ASAL
/*
 * VIEW: VINAME1 
 */
Create view viewname
;
test
    
por asalthangam 30.09.2016 / 01:20

2 respostas

3

É um / entre o início e o fim da linha. Como uma expressão regular que é ^/$ :

 sed 's|^/$|;|' your_file
    
por Florian Diesch 30.09.2016 / 01:30
2

Isso identifica a barra como sendo o único caractere na linha:

sed 's.^/$.;.g'

Caret indica o início da linha, o dólar indica o fim da linha.

Editar: para permitir espaço em branco antes e depois da barra e excluí-lo:

sed -r 's.^(\s)?/(\s)?$.;.'

Editar 2: para permitir espaço em branco e não excluí-lo:

sed -r '/^(\s)?\/(\s)?$/ s./.;.'
    
por wjandrea 30.09.2016 / 01:30