|
Marcela Mašláňová |
489143 |
--- at-3.1.10/at.1.in.t_opti 2006-09-12 12:48:04.000000000 +0200
|
|
Marcela Mašláňová |
489143 |
+++ at-3.1.10/at.1.in 2006-09-12 12:45:40.000000000 +0200
|
|
Marcela Mašláňová |
489143 |
@@ -12,6 +12,16 @@
|
|
Marcela Mašláňová |
489143 |
.RB [ -mldbv ]
|
|
Marcela Mašláňová |
489143 |
.B TIME
|
|
Marcela Mašláňová |
489143 |
.br
|
|
Marcela Mašláňová |
489143 |
+.B at
|
|
Marcela Mašláňová |
489143 |
+.RB [ -V ]
|
|
Marcela Mašláňová |
489143 |
+.RB [ -q
|
|
Marcela Mašláňová |
489143 |
+.IR queue ]
|
|
Marcela Mašláňová |
489143 |
+.RB [ -f
|
|
Marcela Mašláňová |
489143 |
+.IR file ]
|
|
Marcela Mašláňová |
489143 |
+.RB [ -mldbv ]
|
|
Marcela Mašláňová |
489143 |
+.RB -t
|
|
Marcela Mašláňová |
489143 |
+.IR time_arg
|
|
Marcela Mašláňová |
489143 |
+.br
|
|
Marcela Mašláňová |
489143 |
.B "at -c"
|
|
Marcela Mašláňová |
489143 |
.I job
|
|
Marcela Mašláňová |
489143 |
.RI [ job... ]
|
|
Marcela Mašláňová |
489143 |
@@ -227,6 +237,15 @@
|
|
Marcela Mašláňová |
489143 |
.B
|
|
Marcela Mašláňová |
489143 |
\-c
|
|
Marcela Mašláňová |
489143 |
cats the jobs listed on the command line to standard output.
|
|
Marcela Mašláňová |
489143 |
+.TP
|
|
Marcela Mašláňová |
489143 |
+.BI \-t " time_arg"
|
|
Marcela Mašláňová |
489143 |
+Submit the job to be run at the time specified by the
|
|
Marcela Mašláňová |
489143 |
+.BI time_arg
|
|
Marcela Mašláňová |
489143 |
+option argument, which must have the same format as specified for the
|
|
Marcela Mašláňová |
489143 |
+.BR touch(1)
|
|
Marcela Mašláňová |
489143 |
+utility's
|
|
Marcela Mašláňová |
489143 |
+.B -t
|
|
Marcela Mašláňová |
489143 |
+time option argument ([[CC]YY]MMDDhhmm).
|
|
Marcela Mašláňová |
489143 |
.SH FILES
|
|
Marcela Mašláňová |
489143 |
.I @ATJBD@
|
|
Marcela Mašláňová |
489143 |
.br
|
|
Marcela Mašláňová |
489143 |
--- at-3.1.10/at.c.t_ 2006-09-12 10:15:56.000000000 +0200
|
|
Marcela Mašláňová |
489143 |
+++ at-3.1.10/at.c 2006-09-12 10:30:17.000000000 +0200
|
|
Marcela Mašláňová |
bf7489 |
@@ -750,6 +750,101 @@
|
|
Marcela Mašláňová |
bf7489 |
return p;
|
|
Marcela Mašláňová |
bf7489 |
}
|
|
Marcela Mašláňová |
bf7489 |
|
|
Marcela Mašláňová |
bf7489 |
+/* Handle POSIX.2 '-t' option :
|
|
Marcela Mašláňová |
bf7489 |
+ * Parses time string in "touch(1)" format:
|
|
Marcela Mašláňová |
bf7489 |
+ * [[CC]YY]MMDDhhmm[.ss]
|
|
Marcela Mašláňová |
bf7489 |
+ * and returns time_t .
|
|
Marcela Mašláňová |
bf7489 |
+ */
|
|
Marcela Mašláňová |
bf7489 |
+time_t
|
|
Marcela Mašláňová |
bf7489 |
+t_option(char *s)
|
|
Marcela Mašláňová |
bf7489 |
+{
|
|
Marcela Mašláňová |
bf7489 |
+ time_t t=time(0L);
|
|
Marcela Mašláňová |
bf7489 |
+ struct tm tm, tm_now=*localtime(&t);
|
|
Marcela Mašláňová |
bf7489 |
+ int l;
|
|
Marcela Mašláňová |
bf7489 |
+
|
|
Marcela Mašláňová |
bf7489 |
+ if((s == 0L) || (*s == '\0'))
|
|
Marcela Mašláňová |
bf7489 |
+ {
|
|
Marcela Mašláňová |
bf7489 |
+ return 0L;
|
|
Marcela Mašláňová |
bf7489 |
+ };
|
|
Marcela Mašláňová |
bf7489 |
+ memset(&tm,'\0',sizeof(tm));
|
|
Marcela Mašláňová |
bf7489 |
+ l = strnlen(s,15);
|
|
Marcela Mašláňová |
bf7489 |
+ switch(l)
|
|
Marcela Mašláňová |
bf7489 |
+ {
|
|
Marcela Mašláňová |
bf7489 |
+ case 15:
|
|
Marcela Mašláňová |
bf7489 |
+ /* CCYYMMDDhhmm.ss */
|
|
Marcela Mašláňová |
bf7489 |
+ sscanf(s, "%4d%2d%2d%2d%2d.%2d",
|
|
Marcela Mašláňová |
bf7489 |
+ &tm.tm_year, &tm.tm_mon, &tm.tm_mday, &tm.tm_hour, &tm.tm_min, &tm.tm_sec
|
|
Marcela Mašláňová |
bf7489 |
+ );
|
|
Marcela Mašláňová |
bf7489 |
+ if(tm.tm_year)
|
|
Marcela Mašláňová |
bf7489 |
+ tm.tm_year -= 1900 ;
|
|
Marcela Mašláňová |
bf7489 |
+
|
|
Marcela Mašláňová |
bf7489 |
+ break;
|
|
Marcela Mašláňová |
bf7489 |
+
|
|
Marcela Mašláňová |
bf7489 |
+ case 13:
|
|
Marcela Mašláňová |
bf7489 |
+ /* YYMMDDhhmm.ss */
|
|
Marcela Mašláňová |
bf7489 |
+ sscanf(s, "%2d%2d%2d%2d%2d.%2d",
|
|
Marcela Mašláňová |
bf7489 |
+ &tm.tm_year, &tm.tm_mon, &tm.tm_mday, &tm.tm_hour, &tm.tm_min, &tm.tm_sec
|
|
Marcela Mašláňová |
bf7489 |
+ );
|
|
Marcela Mašláňová |
bf7489 |
+ if(tm.tm_year)
|
|
Marcela Mašláňová |
bf7489 |
+ tm.tm_year += 100 ; /* Y2.1K+ bug! */
|
|
Marcela Mašláňová |
bf7489 |
+
|
|
Marcela Mašláňová |
bf7489 |
+ break;
|
|
Marcela Mašláňová |
bf7489 |
+
|
|
Marcela Mašláňová |
bf7489 |
+ case 11:
|
|
Marcela Mašláňová |
bf7489 |
+ /* MMDDhhmm.ss */
|
|
Marcela Mašláňová |
bf7489 |
+ sscanf(s, "%2d%2d%2d%2d.%2d",
|
|
Marcela Mašláňová |
bf7489 |
+ &tm.tm_mon, &tm.tm_mday, &tm.tm_hour, &tm.tm_min, &tm.tm_sec
|
|
Marcela Mašláňová |
bf7489 |
+ );
|
|
Marcela Mašláňová |
bf7489 |
+
|
|
Marcela Mašláňová |
bf7489 |
+ tm.tm_year = tm_now.tm_year;
|
|
Marcela Mašláňová |
bf7489 |
+
|
|
Marcela Mašláňová |
bf7489 |
+ if(tm.tm_mon)
|
|
Marcela Mašláňová |
bf7489 |
+ tm.tm_mon -= 1;
|
|
Marcela Mašláňová |
bf7489 |
+ break;
|
|
Marcela Mašláňová |
bf7489 |
+
|
|
Marcela Mašláňová |
bf7489 |
+ case 12:
|
|
Marcela Mašláňová |
bf7489 |
+ /* CCYYMMDDhhmm */
|
|
Marcela Mašláňová |
bf7489 |
+ sscanf(s, "%4d%2d%2d%2d%2d",
|
|
Marcela Mašláňová |
bf7489 |
+ &tm.tm_year, &tm.tm_mon, &tm.tm_mday, &tm.tm_hour, &tm.tm_min
|
|
Marcela Mašláňová |
bf7489 |
+ );
|
|
Marcela Mašláňová |
bf7489 |
+ if(tm.tm_year)
|
|
Marcela Mašláňová |
bf7489 |
+ tm.tm_year -= 1900 ;
|
|
Marcela Mašláňová |
bf7489 |
+ break;
|
|
Marcela Mašláňová |
bf7489 |
+
|
|
Marcela Mašláňová |
bf7489 |
+ case 10:
|
|
Marcela Mašláňová |
bf7489 |
+ /* YYMMDDhhmm */
|
|
Marcela Mašláňová |
bf7489 |
+ sscanf(s, "%2d%2d%2d%2d%2d",
|
|
Marcela Mašláňová |
bf7489 |
+ &tm.tm_year, &tm.tm_mon, &tm.tm_mday, &tm.tm_hour, &tm.tm_min
|
|
Marcela Mašláňová |
bf7489 |
+ );
|
|
Marcela Mašláňová |
bf7489 |
+ if(tm.tm_year)
|
|
Marcela Mašláňová |
bf7489 |
+ tm.tm_year += 100 ; /* Y2.1K+ bug! */
|
|
Marcela Mašláňová |
bf7489 |
+ break;
|
|
Marcela Mašláňová |
bf7489 |
+
|
|
Marcela Mašláňová |
bf7489 |
+ case 8:
|
|
Marcela Mašláňová |
bf7489 |
+ /* MMDDhhmm */
|
|
Marcela Mašláňová |
bf7489 |
+ sscanf(s, "%2d%2d%2d%2d",
|
|
Marcela Mašláňová |
bf7489 |
+ &tm.tm_mon, &tm.tm_mday, &tm.tm_hour, &tm.tm_min
|
|
Marcela Mašláňová |
bf7489 |
+ );
|
|
Marcela Mašláňová |
bf7489 |
+ if( tm.tm_mday )
|
|
Marcela Mašláňová |
bf7489 |
+ tm.tm_year = tm_now.tm_year;
|
|
Marcela Mašláňová |
bf7489 |
+ break;
|
|
Marcela Mašláňová |
bf7489 |
+ default:
|
|
Marcela Mašláňová |
bf7489 |
+ break;
|
|
Marcela Mašláňová |
bf7489 |
+ }
|
|
Marcela Mašláňová |
bf7489 |
+
|
|
Marcela Mašláňová |
bf7489 |
+ if( tm.tm_mon )
|
|
Marcela Mašláňová |
bf7489 |
+ tm.tm_mon -= 1;
|
|
Marcela Mašláňová |
bf7489 |
+
|
|
Marcela Mašláňová |
bf7489 |
+ if( tm.tm_mday )
|
|
Marcela Mašláňová |
bf7489 |
+ {
|
|
Marcela Mašláňová |
bf7489 |
+ tm.tm_isdst = tm_now.tm_isdst;
|
|
Marcela Mašláňová |
bf7489 |
+ return mktime(&tm;;
|
|
Marcela Mašláňová |
bf7489 |
+ } else
|
|
Marcela Mašláňová |
bf7489 |
+ return 0L;
|
|
Marcela Mašláňová |
bf7489 |
+}
|
|
Marcela Mašláňová |
bf7489 |
+
|
|
Marcela Mašláňová |
bf7489 |
+
|
|
Marcela Mašláňová |
bf7489 |
+
|
|
Marcela Mašláňová |
bf7489 |
int
|
|
Marcela Mašláňová |
bf7489 |
main(int argc, char **argv)
|
|
Marcela Mašláňová |
bf7489 |
{
|