File: sleepenh.1

package info (click to toggle)
sleepenh 1.2-2
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 48 kB
  • ctags: 8
  • sloc: ansic: 89; makefile: 61; sh: 24
file content (100 lines) | stat: -rw-r--r-- 2,891 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
.\"                                      Hey, EMACS: -*- nroff -*-
.TH SLEEPENH 1 "2003/01/22"
.\" Please adjust this date whenever revising the manpage.
.\"
.\" Some roff macros, for reference:
.\" .nh        disable hyphenation
.\" .hy        enable hyphenation
.\" .ad l      left justify
.\" .ad b      justify to both left and right margins
.\" .nf        disable filling
.\" .fi        enable filling
.\" .br        insert line break
.\" .sp <n>    insert n+1 empty lines
.\" for manpage-specific macros, see man(7)
.SH NAME
sleepenh \- an enhanced sleep program.
.SH SYNOPSIS
.B sleepenh
.RI [ initial-time ]
.RI sleep-time
.SH DESCRIPTION
\fBsleepenh\fP is a program that can be used when there is a need
to execute some functions periodically in a shell script. It was
not designed to be acurate for a single sleep, but to be
acurate in a sequence of consecutive sleeps.
.br
After a successfull execution, it returns to stdout the timestamp
it finished running, that can be used as \fBinitial-time\fP to a
successive execution of \fBsleepenh\fP.
.SH OPTIONS
There are no command line options. Run it without any option to
get a brief help and version.
.SH ARGUMENTS
\fBsleep-time\fP is a real number in seconds,
with microseconds resolution (1 minute, 20 seconds and 123456
microseconds would be 80.123456).
.br
\fBinitial-time\fP is a real number in seconds, with microseconds
resolution. This number is system dependent. In GNU/Linux systems,
it is the number of seconds since midnight 1970-01-01 GMT. Do not
try to get a good value of \fBinitial-time\fP. Use the value suplied
by a previous execution of \fBsleepenh\fP.
.br
If you don't specify \fBinitial-time\fP, it is assumed the current-time.
.SH EXIT STATUS
An exit status greater or equal to 10 means failure.
Known exit status:
.TP
.B 0
Success.
.TP
.B 1
Success. There was no need to sleep. (means that initial-time +
sleep-time was greater than current-time).
.TP
.B 10
Failure. Missing command line arguments.
.TP
.B 11
Failure. Did not receive SIGALRM.
.TP
.B 12
Failure. Argument is not a number.
.TP
.B 13
Failure. System error, could not get current time.
.SH USAGE EXAMPLE
Supose you need to send the char 'A' to the serial port ttyS0
every 4 seconds. This will do that:
.Sx
   
   #!/bin/sh
   TIMESTAMP=`sleepenh 0`
   while true; do
     # send the byte to ttyS0
     echo -n "A" > /dev/ttyS0;
     
     # just print a nice message on screen
     echo -n "I sent 'A' to ttyS0, time now is ";
     sleepenh 0;

     # wait the required time     
     TIMESTAMP=`sleepenh $TIMESTAMP 4.0`;
   done
   
.Ex
.SH HINT
This program can be used to get the current time. Just execute:
.TP
sleepenh 0
.SH BUGS
It is not acurate for a single sleep. Short sleep-times will also not
be acurate.
.SH SEE ALSO
.BR date (1),
.BR sleep (1).
.br
.SH AUTHOR
This manual page was written by Pedro Zorzenon Neto
<pzn@autsens.com>.