2016-04-26 10 views
1

Das Ziel ist es, ein Bash-Skript zu erstellen, um eine Webseite alle fünf Sekunden zu aktualisieren, und ich habe gekämpft, um es zu tun. Ich weiß, crontab würde butI'd wahrscheinlich funktionieren eher tun Sie es einfach als ein Bash-Skript ... So habe ich diesen Code hier:Refresh Browser mit Bash-Skript

#!/bin/bash 
echo "This script will reload/refresh a webpage every 5 seconds" 

while true; 
do 

wget http://website.com/ >/dev/null 
sleep 2; 

done 

und es funktioniert in den meisten Fällen. Es lädt die Webseite herunter, aktualisiert sie aber nicht so, wie ich es möchte. Ich habe versucht, ein '-e' nach 'wget' hinzuzufügen, aber es sagt, es ist ein ungültiger Befehl. Ich habe auch "curl" anstelle von "wget" verwendet und ich mag, wie "curl" Feedback zeigt, anstatt auch das Herunterladen, aber es aktualisiert die Seite nicht erneut ...

Ich habe auch etwas ausprobiert die Linien dieses:

#!/bin/bash 
while true; 
do 
iceweasel -remote "openURL(website.com)" 
sleep 10; 

done 

es macht seinen Job und öffnet die Webseite ich will, aber es hält Registerkarte nach Registerkarte alle 10 Sekunden hinzufügen. Ich habe versucht, den killall-Befehl zu verwenden, um die Registerkarte zu schließen, bevor sie die Schleife erneut durchläuft. Auf diese Weise würde ich etwas Ähnliches erreichen, aber es funktioniert auch nicht. Es ist wahrscheinlich etwas sehr einfaches, aber ich weiß wirklich nicht, was ich falsch mache.

+0

Sie bereits eine große Lösung [hier] (http://unix.stackexchange.com/a/42933/25919) – sjsam

Antwort

0

Wenn es Ihnen nichts ausmacht ein Skript zu haben, das F5 oder Strg + R automatisch für Sie in einem GUI-Webbrowser drückt, dann können Sie tun, was sjsam vorgeschlagen hat und xdotool verwenden.

(Stellen Sie sicher, xdotool installieren)

while true ; do 
    sleep 2 
    xdotool key ctrl+r 
done 
+0

Ich werde es versuchen jetzt –