sleep
This commit is contained in:
parent
7eed71d9b2
commit
0e21d3939c
15
TODO
Normal file
15
TODO
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
chmod
|
||||||
|
chown
|
||||||
|
printf
|
||||||
|
shuf
|
||||||
|
id
|
||||||
|
ln
|
||||||
|
cp
|
||||||
|
shred
|
||||||
|
du
|
||||||
|
df
|
||||||
|
dd
|
||||||
|
nice
|
||||||
|
nohup
|
||||||
|
mktemp
|
||||||
|
test
|
38
coreutils/sleep.c
Normal file
38
coreutils/sleep.c
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
|
||||||
|
int main(const int argc, const char **argv) {
|
||||||
|
if (argc == 1) {
|
||||||
|
printf("sleep [num[m - minute / h - hour / d - days].. ] / [inf (infinity)]\n");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!strcmp(argv[1], "inf"))
|
||||||
|
for (;;)
|
||||||
|
sleep(1);
|
||||||
|
|
||||||
|
unsigned int sec = 0;
|
||||||
|
for (int i = 1; i < argc; i++) {
|
||||||
|
switch (argv[i][strlen(argv[i]) - 1]) {
|
||||||
|
case 'd':
|
||||||
|
sec += atoi(argv[i]) * 86400;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'h':
|
||||||
|
sec += atoi(argv[i]) * 3600;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'm':
|
||||||
|
sec += atoi(argv[i]) * 60;
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
sec += atoi(argv[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
sleep(sec);
|
||||||
|
return 0;
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user