Alguém pode me ajudar com este Script?

1. Alguém pode me ajudar com este Script?

arthur victor franco de arruda
kasbi

(usa Ubuntu)

Enviado em 16/12/2020 - 07:41h

Olá Pessoal eu preciso de ajuda na criação de um script porém não faço ideia de como começar. gostava de ajuda, será que alguém consegue

é o seguinte Pretende-se desenvolver um script para a shell — chamado pingsweeper.sh — que analise o
estado da ligação do computador a um conjunto de outras máquinas, ligados através da Internet.
Este script deve basear-se no comando ping, que envia uma mensagem ICMP_ECHO_REQUEST
à máquina destinatária e aguarda pela resposta. Se não houver resposta dentro de um prazo prédeterminado, considera-se que a mensagem se perdeu (e, possivelmente, a outra máquina não
está acessível).
O comando a utilizar para testar uma máquina deve ser o seguinte:
$ ping -c 1 <endereço_máquina> 2>&1
A execução do comando pode indicar três possíveis situações:
1. Activo: o comando obteve uma resposta da outra máquina (0% pacotes perdidos).
2. Inactivo: o comando não obteve uma resposta da outra máquina (100% pacotes perdidos).
3. Inválido: o comando não conseguiu obter um endereço válido para a outra máquina


  


2. Re: Alguém pode me ajudar com este Script?

Wagner Souza
wagnerfs

(usa Fedora)

Enviado em 16/12/2020 - 07:59h

Gostaria de te recomendar esse artigo que fiz sobre shell script que de ajudará nos primeiros passos: https://www.vivaolinux.com.br/artigo/Algoritmos-em-Shell-Script

O comando abaixo vai de ajudar a filtrar a saída do comando ping:

ping -c4 uol.com.br | grep packets | cut -d"," -f3 | cut -d " " -f2 


Você vai precisar usar os comandos como if, for ou while para desenvolver seu script. Essa já é uma boa base para iniciar. Qualquer dúvida, vai postando aqui e iremos te ajudar.
_________________________
"GNU/Linux for human beings."

ºvº "Software Livre: não é pelo dinheiro.
/( _ ) É uma questão de consciência."
^ ^
Twitter.: @souza_wf
Linkedin.: https://goo.gl/yxGtsb



3. Re: Alguém pode me ajudar com este Script?

arthur victor franco de arruda
kasbi

(usa Ubuntu)

Enviado em 16/12/2020 - 08:12h

Olá amigo,
Te enviei uma mensagem no twitter


4. Re: Alguém pode me ajudar com este Script?

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 19/12/2020 - 19:00h

kasbi escreveu:

Olá Pessoal eu preciso de ajuda na criação de um script porém não faço ideia de como começar. gostava de ajuda, será que alguém consegue

é o seguinte Pretende-se desenvolver um script para a shell — chamado pingsweeper.sh — que analise o
estado da ligação do computador a um conjunto de outras máquinas, ligados através da Internet.
Este script deve basear-se no comando ping, que envia uma mensagem ICMP_ECHO_REQUEST
à máquina destinatária e aguarda pela resposta.
Se não houver resposta dentro de um prazo pré-determinado, considera-se que a mensagem se perdeu (e, possivelmente, a outra máquina nãoestá acessível).
O comando a utilizar para testar uma máquina deve ser o seguinte:
$ ping -c 1 <endereço_máquina> 2>&1
A execução do comando pode indicar três possíveis situações:
1. Activo: o comando obteve uma resposta da outra máquina (0% pacotes perdidos).
2. Inactivo: o comando não obteve uma resposta da outra máquina (100% pacotes perdidos).
3. Inválido: o comando não conseguiu obter um endereço válido para a outra máquina

#---------------------------------------------------------------------------------------------------------------------#
Boa tarde Kasbi,
Segue sugestão:
Nota.: As três possíveis "Respostas", estou "pegando" do "exit code", veja no comando "case".
[code]
#!/bin/bash
#-------------------#
#Ping e Relatórios
#-------------------#
cam="\033[33;1m";cvm="\033[31;1m";cf="\033[m";
linha() { printf '%*s' "40" ''|sed "s/ /—/g";}

_ping() {
#-c1 01 ping,-s0 8bits, -W1 Tempo de espera, 1 segundo
read -p "Digite o 'IP': " ip
ping -c1 -s0 -W1 ${ip} &>/dev/null
case $? in
0) stt="Ativo";;
1) stt="Inativo";;
2) stt="Inválido";;
esac
echo "${ip}:Endereço ${stt}" >> temp_00.txt
}

_rel() {
printf "\33c$(linha)\n${cam} Relatório Geral:\e[m\n$(linha)\n";
awk -F":" '{s[$1" "$2]++;}END{for(a in s)print s[a],a}' temp_00.txt|sort -nr|column -t
awk -F":" 'BEGIN{print "'$(linha)'\n'${cam}' Estatísticas:'${cf}'\n'$(linha)'"};
{stt[$2]++;count++;};
END{for(a in stt)
print stt[a]"/"count"\t",a"(s)\t",stt[a]/count*100"%"};
END{print "'$(linha)'"}' temp_00.txt
}

[[ "$1" =~ ^(_ping|_rel)$ ]] && $1 || echo -e "\n$(linha)\n${cvm}Parâmetro Inválido: $1${cf}\nUso: $0 (_ping|_rel)\n$(linha)\n"


______________________________________________________________________
Importante: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p'
Att.: Marcelo Oliver
______________________________________________________________________
Nota de esclarecimento:
O comando: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p',
faz parte da minha assinatura.
O qual, "filtra" a página: "https://www.vivaolinux.com.br/termos-de-uso/",
Mostrando o seguinte:

Se você sanou sua dúvida ou resolveu um problema a partir de um
tópico criado, é extremamente recomendável que acesse o tópico e
marque-o como "RESOLVIDO". E mais recomendável ainda que você eleja
como melhor resposta a que mais lhe ajudou.


______________________________________________________________________







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts