Strona 1 z 1

[+] Wget dla poleceń CRON

: 17 lutego 2014, 21:12
autor: Tom:-)
Posiadam komendę do CRON:

Kod: Zaznacz cały

wget -q -O /dev/null http://adresstrony.pl/folder/cron.php>/dev/null 2>&1
opcja: oprócz błędów, nie wypisuje danych wyjściowych

Kod: Zaznacz cały

-O /dev/null
nie zapisuje plików na dysk

Co daje zapis:

Kod: Zaznacz cały

2>&1
oraz dlaczego jest użyty 2 razy:

Kod: Zaznacz cały

/dev/null
a właściwie:

Kod: Zaznacz cały

-O /dev/null
zamiast:

Kod: Zaznacz cały

-O http://adresstrony.pl/folder/cron.php>/dev/null
to jest dla mnie bardziej zrozumiałe

: 17 lutego 2014, 21:26
autor: Rafal_F
Z tego co ja rozumiem:

Kod: Zaznacz cały

-O /dev/null
masz rację, dosłownie to wget ściąga plik do /dev/null, czyli w nicość.

Kod: Zaznacz cały

2>&1
To przekierowanie wyjścia błędów (stderr) do standardowego wyjścia (stdout). Jak napisałeś opcja -q powoduje, że będą wypisywane jedynie błędy, ale przy tej okazji korzysta się z innego strumienia (stderr). Strumień 1 to standardowe wyjście, strumień 2 to wyjście dla błędów.
Użycie:

Kod: Zaznacz cały

...>/dev/null
Przekierowuje standardowe wyjście do /dev/null, czyli w nicość. Jako, że jak już wyżej napisałem błędy zostały przekierowane na standardowe wyjście, w efekcie trafią do /dev/null.

: 17 lutego 2014, 22:37
autor: Tom:-)
Rozbije to na 2 części żebym dobrze zrozumieć:
1.

Kod: Zaznacz cały

-O /dev/null9
nie zapisuje pliku na dysku
2.

Kod: Zaznacz cały

http://adresstrony.pl/folder/cron.php>/dev/null
pobiera plik w nicość

Jeśli to dobrze zrozumiałem to jedno wyklucza drugie. Jeśli nie pobiera (zrzuca do /dev/null) to po co ma opcja zapisywać w nicość, czy muszę bardziej poszerzyć horyzont myślowy? :p

: 17 lutego 2014, 22:45
autor: Rafal_F
wget ściąga pliki. Przełącznik -O (jest trochę bardziej skomplikowany, odsyłam na man wget) w wielkim uproszczeniu wskazuje plik do którego zapisane zostaną ściągnięte dane. W tym przypadku do /dev/null - czyli dane przepadają, nie są zapisywane na dysk.

To:

Kod: Zaznacz cały

...http://adresstrony.pl/folder/cron.php>/dev/null
oznacza przekierowanie standardowego wyjścia do /dev/null. Czyli informacje jakie program wypisze na standardowym wyjściu trafią w nicość.

W pierwszym przypadku przepada plik który ma zostać ściągnięty, w drugim przypadku dane, które miałyby zostać wypisane w terminalu.
Dlatego /dev/null użyty jest 2 razy.

: 19 lutego 2014, 18:54
autor: Tom:-)
@Rafal_F potrafisz łopatą wytłumaczyć. Teraz zajarzyłem. Bardzo Ci dziękuję. Pewnie nie jednokrotnie będę na tym forum będę natrętnie dociekliwy, ale umieć znaczy zrozumieć :-)