Odpowiedź HTTP – sprawdzenie za pomocą bash’a

Odpowiedź HTTP – linux bash

Jak sprawdzić odpowiedź HTTP w linuxie pod bash’em. Mam plik tekstowy zawierający listę adresów URL, takich jak te:

http://books.google.com
http://bing.com/translator
http://moz.com

Chcę sprawdzić kody odpowiedzi HTTP tych URL przy użyciu bash i curl. Plik wejściowy z urlami musi być w formacie linuxa. Jeśli nie jest to trzeba go przekonwertować:

tr -d '\r' < dosfile.txt > output.file
#zmieniam nazwe
mv output.file input.txt

Tu jest skrypt do testowania URL i zapisywania wyników w pliku CSV:

#!/bin/bash
rm out.csv
i=0

while read LINE
do
        url=$(echo -e ""$LINE"" | sed 's/\"/\\"/g')
        echo -e $(((++i)))
        [ $i -lt 1 ] && continue
        echo -e '"'"$url"'"','"'$(curl -I -g ""$url"" 2>/dev/null | head -n 1 | awk -F" " '{print $2}')'"' >> out.csv
done < ./input.txt
#input.txt musi być w formacie linux

exit 0

…i voila! Gotowe!

Można przerwać skrypt w każdej chwili i powrócić do sprawdzania dalszej listy URL . W 3 linii należy zmienić i=0 na i=111 jeśli przerwałeś na 111 lini pliku wejściowego.

5/5 - (1 vote)

admin

Love Linux!

Możesz również polubić…