Verificar se site está online via linha de comando

Publicado por Fábio Berbert de Paula em 29/07/2020

[ Hits: 9.420 ]

Blog: https://fabio.automatizando.dev

 


Verificar se site está online via linha de comando



Existem várias formas de se verificar se um site está online ou offline via linha de comando. Nesta dica apresentarei a solução usando curl.

Digite:

curl -Is https://www.vivaolinux.com.br | head -1
HTTP/2 200

Se o site estiver online, uma mensagem de status HTTP será retornada. Se ele estiver offline, não haverá retorno.

Então vamos aproveitar e criar um pequeno shell script para realizar a tarefa:

vim ~/bin/checar-site

Adicionar o seguinte conteúdo:

#!/bin/bash

URL=$1
RESULT=$(curl -Is $URL | head -n 1)

# cores
RED='\033[0;31m'
GREEN='\033[0;32m'
NOCOLOR='\033[0m'

if [ "$RESULT" ] ; then
  printf "${GREEN}Online${NOCOLOR}"
else
  printf "${RED}Offline${NOCOLOR}"
fi

Tornar o script executável:

chmod +x ~/bin/checar-site

E executar:

~/bin/checar-site https://www.vivaolinux.com.br

Até a próxima!

Outras dicas deste autor

Os comandos apropos, makewhatis e whatis

Configurando adaptador USB WIFI Realtek RTL190CT no Debian

Novo portal Linux: Open SCRIPT

Contando o número de palavras com o VIM

Auto indentar linhas selecionadas no Vim

Leitura recomendada

Negação Condicional no IF

Pacman colorido no Arch Linux

Verificar Conexão e Montar Servidor SAMBA

Conhecendo o printf

Aulas Shell Script do zero - Parte 9

  

Comentários
[1] Comentário enviado por maurixnovatrento em 29/07/2020 - 09:24h

Gostei. Mas apliquei o meu estilo.

#!/bin/bash

[[ $1 = "" ]] && echo && echo -e "\033[1;31m -> URL Não Especificada! \033[0m" && echo && exit
[[ `curl -Is $1 | head -n 1` ]] && echo && echo -e "\033[1;34m -> Online \033[0m" && echo
[[ ! `curl -Is $1 | head -n 1` ]] && echo && echo -e "\033[1;33m -> Offline \033[0m" && echo

___________________________________
Conhecimento não se Leva para o Túmulo.

[2] Comentário enviado por SMarcell em 26/08/2020 - 09:31h

# Contribuições

# Versão sem uso de pipe:
curl -o /dev/null -s -w "%{http_code}\n" URL

# Usando o wget
wget --server-response --spider --quiet URL 2>&1 | awk 'NR == 1 {print $2}'

[3] Comentário enviado por maurixnovatrento em 26/08/2020 - 20:30h


Muito bom, essas contribuições.

___________________________________________________________
[code]Conhecimento não se Leva para o Túmulo.
https://github.com/MauricioFerrari-NovaTrento [/code]



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts