Bóson Treinamentos Cara o comando de substituicao "y" parece so funcionar se for subtistuir um caractere por outro, mesmo tamanho, eu tive que usar outro comando para substituir uma palavra por outra maior. O commando foi o seguinte: s/"para-frase a ser substituida"/"novo conteudo"/g
y é apenas para traduzir UM caracter por outro s é para substituições de strings ( sendo palavra ou palavras. 'y/caracter/caracter a ser substituido/g' ( o '"g" é opcional, pois você pode querer substituir apenas a primeira ocorrencia do caracter ! ) "s/palavra ( ou "palavras entre aspas" )/texto a ser substituído. Espero ter ajudado.
Excelente aula professor, e se for o caso de substituir um diretorio, uma vez que um diretorio constitui de "/mnt/cdrom/teste" Como é feito neste caso ? pq o sed ele considera a / como um parametro certo ? Obrigado!!!
Jonne, o caracter delimitador padrao eh a '/' mas vc pode colocar outro como a , @ m f ou seja uma letra qualquer, ate mesmo a do comando como: sed 'yyxyzy' passwd (usando y como delimitador)
Como eu faço para adicionado nome em determinado linha: Por exemplo onde está o usuário Fábio, nesta parte eu gostaria de acrescentar a cidade, estado, cargo, e numero do telefone
Como testar no if se o nome dentro do arquivo existe, no arquivo /etc/passwd por Exemplo: tenho um arquivo chamado (usuario.txt) dentro do arquivo usuario.txt tem o nome valdenilson, como fazer o teste se o nome Valdenilson existe dentro do arquivo passwd #! /bin/bash lista = $ (cat /usuario.txt) dados =$ (cat /etc/passwd) if [ $ lista -e $ dados ] // eu quero que a variavel lista teste se existe em dados then echo usuario existe else echo usuario nao existe fi
Obrigado por compartilhar seu conhecimento, estou revisando o material para a LPIC, e seus vídeos tem me ajudado!
10:05 o x do usbmux foi junto, no caso de ter outros x no meio do texto teria que ser o comando 's/:x:/:z::/g' pra manter esse x
Excelente suas aulas Professor,muito obrigado por ajudar a desvendar o Linux.
Fábio, sou seu fã ! Assisto seus vídeos com bastante frequência.
Adoro suas explicações sobre Unix/Linux em geral.
Cara que canal top
usava a syntaxe sed pra replace no vim sem saber...
o vim tem incorporado o sed:
:s/caracteres/caracteres-novos/g
(/g troca em todas as ocorrências)
Bóson Treinamentos Cara o comando de substituicao "y" parece so funcionar se for subtistuir um caractere por outro, mesmo tamanho, eu tive que usar outro comando para substituir uma palavra por outra maior. O commando foi o seguinte:
s/"para-frase a ser substituida"/"novo conteudo"/g
y é apenas para traduzir UM caracter por outro
s é para substituições de strings ( sendo palavra ou palavras.
'y/caracter/caracter a ser substituido/g' ( o '"g" é opcional, pois você pode querer substituir apenas a primeira ocorrencia do caracter ! )
"s/palavra ( ou "palavras entre aspas" )/texto a ser substituído.
Espero ter ajudado.
Excelente aula professor, e se for o caso de substituir um diretorio, uma vez que um diretorio constitui de "/mnt/cdrom/teste"
Como é feito neste caso ? pq o sed ele considera a / como um parametro certo ?
Obrigado!!!
so colocar a outra barra na frente como exemplo \/home\/user....
Jonne, o caracter delimitador padrao eh a '/' mas vc pode colocar outro como a , @ m f ou seja uma letra qualquer, ate mesmo a do comando como:
sed 'yyxyzy' passwd (usando y como delimitador)
Como eu faço para adicionado nome em determinado linha: Por exemplo onde está o usuário Fábio, nesta parte eu gostaria de acrescentar a cidade, estado, cargo, e numero do telefone
sed '/Fábio/s/Fábio Cidade Estado Cargo/' arquivo.txt
Como testar no if se o nome dentro do arquivo existe, no arquivo /etc/passwd
por Exemplo: tenho um arquivo chamado (usuario.txt) dentro do arquivo usuario.txt tem o nome valdenilson, como fazer o teste se o nome Valdenilson existe dentro do arquivo passwd
#! /bin/bash
lista = $ (cat /usuario.txt)
dados =$ (cat /etc/passwd)
if [ $ lista -e $ dados ] // eu quero que a variavel lista teste se existe em dados
then
echo usuario existe
else
echo usuario nao existe
fi
sed -n /Valdenilson/p arquivo.txt
~~
.