Przepisanie prostego skryptu z windowsa na linuxa

Witam !

Czy dało by się przepisać taki skrypt, aby działał w linuxie i zapętlał się w nieskończoność ?

Na windowsie wyglądało to tak:

:START

 

#!/bin/bash
while :
do
firefox http://www.xxxx.com &
PID=$!
sleep 1800
kill $PID
done

W moim odczuciu, to powinno to wyglądać tak:

 

while (true); do
firefox http://www.xxxx.com &
PID=$!
sleep 1800
kill $PID
done

PS: Twój kod u mnie nie działa.

Nie działa jest słabym sposobem opisu problemu. Jego kod jest prawidłowy z tym że zamiast

#!/bin/bash

mógł użyć

#!/usr/bin/env bash

wtedy kod zadziała także na systemach na których bash jest w innym katalogu, jak na przykład w bsd:

$ which bash
/usr/local/bin/bash

 

Jego kod nie jest prawidłowy. Zamiast średnika pojawia się dwukropek - u mnie nie działał po wklejeniu do terminala.

Dwukropek jest takim krótkim synonimem ‘true’:

http://stackoverflow.com/questions/3224878/what-is-the-purpose-of-the-colon-gnu-bash-builtin

A jeśli program nie działa to podaje się co nie działa, pojawia sie błąd składni, wypisuje zły wynik, zamyka sie komputer czy inne cuda. Wtedy można coś doradzić a tak to tylko wróżyć.