Enviado em 30/07/2018 - 15:09h
Boa tarde Pessoal, estou com uma tarefa aqui e não estou sabendo exatamente por onde começar, procurei em varios sites mas não encontrei algo que pudesse adequar, o problema é o seguinte, eu tenho um arquivo.sh que na linha 16 tem o seguinte IP=10.10.10.10 eu preciso verificar o ip da minha máquina e comparar com esse ip da linha 16, se o ip for igual, ignoro, se for diferente substitui o ip da linha 16 pelo ip que é o da máquina, ou seja se eu der um ifconfig e aparecer 10.10.10.20 a linha 16 deverá ficar IP=10.10.10.20 alguém poderia me dar uma ajuda com esse tema?Enviado em 30/07/2018 - 15:41h
#!/bin/bash
FILE="/CAMINHO/DO/ARQUIVO.EXTENSÃO" # ALTERAR DE ACORDO COM O SEU ARQUIVO
REDE="WLAN1" # ALTERAR DE ACORDO COM O SUA REDE
IP_MAQUINA=`ip addr show $REDE|grep -m1 inet|awk '{print $2}'|cut -d'/' -f1`
IP_ARQUIVO=`sed -n '16p' $FILE| cut -d'=' -f2`
[ $IP_MAQUINA == $IP_ARQUIVO ] && echo "IP's iguais, nada a fazer." || echo "Ip's diferentes, alterando ..." && sed -i "s/$IP_ARQUIVO/$IP_MAQUINA/" $FILE
Enviado em 31/07/2018 - 08:34h
#!/bin/bash
FILE="/CAMINHO/DO/ARQUIVO.EXTENSÃO" # ALTERAR DE ACORDO COM O SEU ARQUIVO
REDE="WLAN1" # ALTERAR DE ACORDO COM O SUA REDE
IP_MAQUINA=`ip addr show $REDE|grep -m1 inet|awk '{print $2}'|cut -d'/' -f1`
IP_ARQUIVO=`sed -n '16p' $FILE| cut -d'=' -f2`
[ $IP_MAQUINA == $IP_ARQUIVO ] && echo "IP's iguais, nada a fazer." || echo "Ip's diferentes, alterando ..." && sed -i "s/$IP_ARQUIVO/$IP_MAQUINA/" $FILE
Enviado em 31/07/2018 - 10:18h
[email protected] ~ $ cat sh.sh
#!/bin/bash
FILE="ip.txt" # ALTERAR DE ACORDO COM O SEU ARQUIVO
REDE="wlan1" # ALTERAR DE ACORDO COM O SUA REDE
IP_MAQUINA=`ip addr show $REDE|grep -m1 inet|awk '{print $2}'|cut -d'/' -f1`
IP_ARQUIVO=`sed -n '16p' $FILE| cut -d'=' -f2`
[ "$IP_MAQUINA" == "$IP_ARQUIVO" ] && echo "IP's iguais, nada a fazer." || echo "Ip's diferentes, alterando ..." && sed -i "s/$IP_ARQUIVO/$IP_MAQUINA/" $FILE
[email protected] ~ $ cat ip.txt
bknsp
afjdnvboçja
jfvb asihbadfçobn
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
IP=192.168.25.1
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjb
[email protected] ~ $ ./sh.sh
Ip's diferentes, alterando ...
[email protected] ~ $ cat ip.txt
bknsp
afjdnvboçja
jfvb asihbadfçobn
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
IP=192.168.25.5
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjb
[email protected] ~ $ ./sh.sh
IP's iguais, nada a fazer.
Enviado em 31/07/2018 - 10:25h
[email protected] ~ $ cat sh.sh
#!/bin/bash
FILE="ip.txt" # ALTERAR DE ACORDO COM O SEU ARQUIVO
REDE="wlan1" # ALTERAR DE ACORDO COM O SUA REDE
IP_MAQUINA=`ip addr show $REDE|grep -m1 inet|awk '{print $2}'|cut -d'/' -f1`
IP_ARQUIVO=`sed -n '16p' $FILE| cut -d'=' -f2`
[ "$IP_MAQUINA" == "$IP_ARQUIVO" ] && echo "IP's iguais, nada a fazer." || echo "Ip's diferentes, alterando ..." && sed -i "s/$IP_ARQUIVO/$IP_MAQUINA/" $FILE
[email protected] ~ $ cat ip.txt
bknsp
afjdnvboçja
jfvb asihbadfçobn
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
IP=192.168.25.1
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjb
[email protected] ~ $ ./sh.sh
Ip's diferentes, alterando ...
[email protected] ~ $ cat ip.txt
bknsp
afjdnvboçja
jfvb asihbadfçobn
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
IP=192.168.25.5
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjbbknsp
afjdnvboçja
arvjb
[email protected] ~ $ ./sh.sh
IP's iguais, nada a fazer.
Enviado em 31/07/2018 - 10:31h
Enviado em 31/07/2018 - 21:47h
ip=$(ip addr show wlp3s0|awk '/inet / {print $2}')
[[ ${IP} != ${ip} ]] && sed -i "16s|$IP|${ip}|" $0
#!/bin?bash
IP=$(awk -F'=' 'NR==16 {print $2}' arquivo.sh)
ip=$(ip addr show wlp3s0|awk '/inet / {print $2}')
[[ ${IP} != ${ip} ]] && { sed -i "16s|${IP}|${ip}|" arquivo.sh ; echo -e "\nArquivo Alterado\n" ; }
Slackware para Desktop ou Notebook em 2021
Asterisk - Configurando Ramais, Plano de Discagem e URA Simples
Executando Arquivo de Mídia .opus pelo Terminal
Usando AWX no Fedora CoreOS com K3s
Instalando um localizador de aplicações avançado no seu sistema
Não consigo instalar nada pelo terminal (0)
Resolução de tela no Ubuntu 20.04 (6)
KDE Plasma é a melhor interface do Linux? 5 motivos que fazem eu achar... (37)
comando em variavel que executa automaticamente no bashrc[AJUDA] (8)
[Tcl/Tk] Mostrar conexões de rede ativas
[Shell Script] Bashblog v3.0 - cria um microblog em HTML5
[Shell Script] Manutenção e limpeza do Linux
[Shell Script] ebook-cli - gerencia livros digitais entre PC e leitores ebooks
[Shell Script] AptList v1.1 - instalação de pacotes DEB a partir de uma lista