- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		Pessoal,
 
 Mandei uma mensagem a um tempo atras e consegui com a juda do marcos amorim um comando para pegar ip
 ifconfig ethX |grep inet| cut -d : -f 2 | cut -d B -f 1
 ifconfig pppX |grep inet| cut -d : -f 2 | cut -d B -f 1
 ele me retorna o IP, isso jah foi um gande avanço, como eu faço agora para que jah de posse deste IP , inserir a informaçaão do IP  no corpo de um email para que seja enviado para mim.
 Outra Dúvida é tenho uma VPN com PPTP, como fazer tb com que este script que pega o ip e envia ele para mim, escreva também no arquivo pptp.conf , nos itens remote ip e no listen.
 
 Isso é possivel ?
 
 []s
 Skill
 
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		
 var=`ifconfig ethX | cut -d : -f2 | cut -d B -f1 `
 echo $var >> tmp
 mail [email protected] < tmp
 
 No arquivo tmp, vc pode deixar outras coisas escritas e no final sera adicionado o ip encontrado. Esse arquivo texto sera enviado por mail pra vc.
 
 ----------------------------------------------------------------------------------
 
 A segunda duvida, pra eu responder ao certo, preciso saber como eh esse arquivo certinho...manda a parte onde vc tem q inserir o ip que ai eu resolvo certinho pra vc
 
 falows
 
 
 
 
 
 
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		  Se o arquivo pptp.conf for do tipo:
 
 cat pptp.conf
 
 dados
 remote ip
 dados
 listen
 ...
 
 Ai vc pode fazer assim:
 
 sed s/"remote ip"/"remote ip $var"/ pptp.conf > pptp.conf~
 cat pptp.conf~ > pptp.conf
 sed s/"listen"/"listen $var"/ pptp.conf > pptp.conf~
 cat pptp.conf~ > pptp.conf
 
 ...lembrando q esse script eh continuacao do anterior.
 
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		ooopa!!!  essa dica éh boa!!!!
 
 
 benzatti, dependendo da posicao no arquivo q vc vai colocar o ip o script muda?
 
 como seria p/ colocar no meio d uma sintaxe no /etc/rc.local por exemplo:
 
 /usr/sbin/ciped-cb device=cipcb0 me=<<aqui vai o script com o ip>> peer=xxxxx e por ae vai...
 
 espero q seja possivel, pois tbm vai me quebrar um galhao tbm
 
 valeu!
 
 
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		  Entao demiurgo...
 
 ...o comando sed ali no seu caso tem q fazer o seguinte...
 ...sed s/"substitui isso"/"por isso"/ rc.local ......nas linhas onde tiver "substitui isso"...
 ...so que esse comando apenas joga na tela a saida...pra alterar o arquivo
 vc precisa redirecionar essa saida pra um arquivo temporario e depois gravar por
 cima do arquivo original...eu faço assim pelo menos.
 Espero que seja isso que vc tenha perguntado...
 ...qq coisa pergunta de novo exatamente o que vc quer fazer q ai fica mais facil ...
 
 [ ] ´s
 
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		blz...
 
 o q eu quero fazer eh substituir aquela parte q eu postei antes no rc.local
 
 /usr/sbin/ciped-cb device=cipcb0 me=<<aqui vai o script com o ip>> peer...
 ||
 aqui vai ficar o IP
 
 blz, éh no meio d uma linha no rc.local
 
 valeu pela ajuda kra
 
 t+
 
 
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		Acho que é isso cara...
 
 var=`ifconfig ethX | grep inet | cut -d : -f2 | cut -d B -f1`
 sed s/"/usr/sbin/ciped-cb device=cipcb0 me= peer=xxx ..."/"/usr/sbin/ciped-cb device=cipcb0 me=$var per=xxx..."/ rc.local > tmp
 cat tmp > rc.local
 
 Onde eu coloquei tres pontos vc substitui pelo que falta pra completar o que ta escrito na linha.
 
 [ ] ´s
 
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		fiz este script da forma recomendada mais recebo umas mensagens quando executo o script
 
 sed: -e expression #1, char 36: Unterminated `s´ command
 sed: -e expression #1, char 32: Unterminated `s´ command
 
 o Script ta assim
 
 var=`ifconfig eth0 | grep inet | cut -d : -f2 | cut -d B -f1`
 echo $var >> tmp
 mail [email protected] < tmp
 sed s/"remoteip"/"remoteip $var"/ pptpd.conf > pptpd.conf~
 cat pptpd.conf~ > pptpd.conf
 sed s/"listen"/"listen $var"/ pptpd.conf > pptpd.conf~
 cat pptpd.conf~ > pptpd.conf
 
 
 o meu pptpd esta assim
 
 remoteip 200.x.x.x
 listen 200.x.x.x
 
 e quando executo o script ele fica em branco.
 outra coisa e que na primeira linha deste script
 var=`ifconfig eth0 | grep inet | cut -d : -f2 | cut -d B -f1`
 
 me devolve o ip 200.x.x.x fe80 (tem como tirar este fe80 ? porque se ele entrar no pptpd.conf acho que vai dar errado.
 
 []´s
 Skill
 
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		Eh acontece isso ai mesmo <IMG SRC="images/forum/icons/icon_frown.gif"> uma vez eu fui usar o sed eh picas... me ferrei hehe deu esse problema <IMG SRC="images/forum/icons/icon_smile.gif"> eu entao eu usei o vi para ajeitar isso usando
 
 :s/substuir/peloque/g
 
 mas como eh script tem que usar o sed e nada <IMG SRC="images/forum/icons/icon_frown.gif"> se alguem resolver isso blza
 
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		Quando eu uso por exemplo, o comando que vc colocou lá no seu script:
 
 sed s/"listen"/"listen $var"/ pptp.conf > pptp.conf~
 
 funciona certinho, dá uma olhada se vc nao tá colocando espaço em algum lugar errado.
 
 Se aparecer sempre fe80, isso aqui resolve o problema pra tirar ele
 var=`ifconfig eth0 | grep inet | cut -d : -f2 | cut -d B -f1 | tr fe80 " "`
 
 
 
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		Bom vamos lá.
 
 
 chequei linha por linha, nao tem espaço a mais, nenhuma virgula for do lugar
 
 nesta nova linha, com a parte do fe80,  e o que occore agora e que o IP vem sem o fe80 o que é otimo, so que o ip agora vem assim
 
 2.253.142.16 -> e seria 200.243.122.16
 
 var=`ifconfig eth0 | grep inet | cut -d : -f2 | cut -d B -f1 | tr fe80 " "`
 echo $var >> tmp
 mail [email protected] < tmp
 até aqui funciona
 
 quando entra aqui
 
 sed s/"remoteip"/"remoteip $var"/ pptpd.conf > pptpd.conf~
 cat pptpd.conf~ > pptpd.conf
 sed: -e expression #1, char 36: Unterminated `s´ command
 sed s/"listen"/"listen $var"/ pptpd.conf > pptpd.conf~
 sed: -e expression #1, char 32: Unterminated `s´ command
 
 se fosse possivel entrar em contato comigo pelo msn ou pelo icq eu agradeceria icq 104363444 / 33841225 - > msn: [email protected]
 
 
 []´s
 Skill
 
 
 
 
 
 
 
 
 
 
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		O lance do sed é o seguinte, dependendo da versao pode ser que nao funcione. No seu caso acho que a seguinte maneira vai funcionar:
 
 sed "s/listen/listen $ip/" pptp.conf > pptp.conf~
 
 ou
 
 sed "s/\"listen\"/\"listen $ip\"/" pptp.conf > pptp.conf~
 
 Agora a parte de pegar o ip, eu precisaria ver a saida exata do comando ifconfig, para que eu pudesse isolar a saida que vc precisa.
 
 
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		ifconfig eth0
 eth0      Link encap:Ethernet  HWaddr 00:04:75:CD:ED:FE
 inet addr:200.xxx.xxx.x50  Bcast:200.xxx.xx.x51  Mask:255.255.255.252
 inet6 addr: fe80::204:75ff:fecd:edfe/64 Scope:Link
 UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
 RX packets:254507 errors:0 dropped:0 overruns:0 frame:0
 TX packets:235986 errors:0 dropped:0 overruns:0 carrier:4
 collisions:18 txqueuelen:100
 RX bytes:194955935 (185.9 Mb)  TX bytes:35263604 (33.6 Mb)
 Interrupt:10 Base address:0xde00
 
 eu preciso apenas no inet addr " 200.xxx.xxx.x50 " só o ip mesmo
 
 e isnserir nnos campos marcados com # comentário #
 
 no pptpd.conf fica assim
 
 
 speed 115000
 option /etc/ppp/options.ptpd
 debug
 localip 200.xxx.xxx.xxx # precisco mudar o ip aqui #
 remoteip 192.168.100-120
 listen 200.xxx.xxx.xxx # precisco mudar o ip aqui #
 
 []´s
 Fabio
 
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		
 #aqui vc pega o ip
 var_ip=`ifconfig eth0 | grep Mask | awk ´{print $2}´ | cut -f2 -d":" `
 
 #aqui vc modifica o arquivo
 sed "s/listen/listen $var_ip/" pptp.conf > pptp.conf~
 cat pptp.conf~ > pptp.conf
 sed "s/localip/localip $var_ip/" pptp.conf > pptp.conf~
 cat pptp.conf~ > pptp.conf
 
 #ou pode tentar modificar assim, caso o metodo anterior tb nao funcione
 sed "s/\"listen\"/\"listen $var_ip\"/" pptp.conf > pptp.conf~
 cat pptp.conf~ > pptp.conf
 sed "s/\"localip\"/\"localip $var_ip\"/" pptp.conf > pptp.conf~
 cat pptp.conf~ > pptp.conf
 
 [ ] ´s
 
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		Ola pessoal, bom estou com um problema tentei fazer uns testes com este script mas quando eu uso echo $var ao inves dele mostrar o ip ele mostra exatamente o que ta escrito no var= 
 
 e agora ?
 uso Slack 9 <IMG SRC="images/forum/icons/icon_eek.gif">
 
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		Bom essa mensagem ai em riba eh minha.  
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		tente colocar ´$var´ para ver se vai funcionar...
 
 
 
 Marcos Amorim
 
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		O que acontece Rafalel, é que quando vc executa um script, automaticamente ele é executado em um shell a parte. Logo, apos a execução do script, se vc tentar ver o conteudo de uma variavel, vc verá o conteudo dessa variavel no shell atual. 
 Para testar o valor contido nela, coloque no proprio script um comando para sair o valor da variavel. Ex: echo $var (dentro do script)
 
 Obs: Para executar o script do shell atual, vc pode usar o comando "source"
 [ ] ´ s
 
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		Ae valeu pela força que ta me dando, ta fucionando quase 100%
 
 o meu problema agora e o seguinte como o arquivo fica assim
 
 localip 200.xxx.xxx.xx1
 
 quando ele roda o scrip ele ta ficando
 localip 200.xxx.xxx.xx1 200.xxx.xxx.xx2
 
 ai se eu rodar novamente o script ele fica
 localip 200.xxx.xxx.xx1 200.xxx.xxx.xx2 200.xxx.xxx.xx3
 
 eu precisaria que ele apagasse o que vem depois do espaço antes de inserir o outro  ou sobscrever o que jah existe tem como fazer??
 
 
 []´s
 Fabio
 
 
- 
	
	
	
		Script para Pegar IP, Enviar e-mail e escrever no pptp.conf 
		Opan  uma errata em uma colocação minha ele está inserindo certo 
 
 localip ipnovo ipantigo ele tá apenas empurrando de lado o ip antigo
 
 localip 200.xxx.xxx.xx2 200.xxx.xxx.xx1(este ip que e o que tem sair)
 
 []´s
 Fabio Sena