On Wednesday 05 May 2004 12:44, Diniz Alexandre Daminelli wrote: > Como fazer para trocar o primeiro caracter, de uma linha, de um arquivo > texto. > > Gostaria de trocar o simbolo # por um espa�o em branco, e o contrario > tamb�m, um espa�o em branco para o simbolo #; mas s� em determinada linha. > [...] > A modifica��o seria feita somente no primeiro caracter, e em uma > determinada linha, que seria encontrada pelo identificador da linha > superior a ela. Sei que com o comando sed d� para realizar tal taerefa so > nao sei como.
Para comentar: sed -i '<linha>s/^/#/' arquivo Para descomentar: sed -i '<linha>s/^#//' arquivo Onde "<linha>" � a linha que se deseja (des)comentar. Ex: sed -i '2s/^/#/' arquivo Note que voc� precisa saber o n�mero exato da linha. Descobrir esta informa��o a partir do n�mero da sala � complicado, pois estes n�meros n�o correspodem ao n�mero da linha seguinte. Uma outra solu��o seria: sed -i "$((<num_sala> * 2))s/^/#/" arquivo e sed -i "$((<num_sala> * 2))s/^#//" arquivo Onde <num_sala> � o n�mero da sala (sem o zero da frente, sen�o o n�mero ser� interpretado como octal). Note, entretanto, que para esta solu��o funcionar, o arquivo precisa ter _exatamente_ este formato: #sala XX <comando1> #sala YY <comando2> ... Ou seja, sem linhas em branco adicionais. -- Anderson Lizardo --------------------------------------------------------------------------- Esta lista � patrocinada pela Conectiva S.A. Visite http://www.conectiva.com.br Arquivo: http://bazar2.conectiva.com.br/mailman/listinfo/linux-br Regras de utiliza��o da lista: http://linux-br.conectiva.com.br FAQ: http://www.zago.eti.br/menu.html
