Program sleep pocka pozadovanou dobu a ukonci se. V Linuxu casto pouzivam tento program pri psani skriptu. Ve Windows XP vsak nic podobneho neni. Co by kdo taky cekal od 8 let stareho operacniho systemu (XP je z 25.10.2001)? Jak je to s Windows Vista nevim – nepouzivam.
V Linuxu je syntaxe nasledujici:
sleep 3
pocka 3s
I kdyz ve Windows XP nic podobneho neni, lze si pomoci jinak – programem PING. Kazdeho asi napadne, co ma ping a sleep spolecneho. Odpoved je jednoducha, jestlize se ping spusti se spravnymi parametry, funguje stejne jako sleep. Popis vsech parametru je na strankach Microsoftu.
ping 127.0.0.1 -n 3 -w 1000> nul
pocka 3s
-w doba, po kterou bude ping cekat na odpoved. Zadava se v ms.
-n pocet pozadavku na odpoved. Jelikoz ma ping na localhost (127.0.0.1) prakticky nulovou odezvou, poslouzi jako parametr pro "uspani".
> nul zahodit (nevypisovat) vypisy
Nejjednodussi je vytvorit program, ktery bude vyuzivat funkci sleep. V C by se to dalo napsat nejak podobne:
#include <stdio.h> #include <stdlib.h> #include <Windows.h> /* sleep() */ int main(int argc, char *argv[]) { int cekat; if (argv[1] == NULL) { printf("Jako parametr uvedte cas v sekundach!\n"); } else { while ((cekat = atoi(argv[1])) == 0); /* retezec z argv[1] se prevede na cislo */ cekat = (cekat * 1000); /* funkci sleep se musi zadavat cas v [ms] => * 1000 */ sleep(cekat); } return 0; }
Pokud to nekdo chcete pouzit, tady je 32bit exe. Jestlize ma nekdo 64bit, nebo si to chce nejak upravit, tak tady je projekt v Dev-C++.
Program je dobre nakopirovat do C:\Windows, nebo do jine slozky, ktera je uvedena v promene PATH.