SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
hi, fellows
yes, I know it's a 'common' issue, coz I was searching and found some posts about this problem, but still can't make it work.
what I do is this:
Code:
$ at 1957
warning: commands will be executed using (in order) a) $SHELL b) login shell c) /bin/sh
at> echo "hello"
at> <EOT>
inmediatly after that:
Code:
~$ at -l
9 2006-03-04 19:57 a jp
..but at 19.57 nothing happens at all, then I do at -l again, and the job has gone (think it's normal).
I listed the running processes and get this 2 lines:
..so I guess that services are working, but don't know what thats numbers after the services means.
The at.allow file doesn't exist, and the at.deny is empty.
As root, 'at' cmd doesn't work either, and no single mention to 'at' in /var/log/messages.
What should I do to get it working?
Thanks in advance,
I don't use at - but it looks like you need to specify where to direct the output of the command. Does echo "hello" > /tmp/hello.log work? The man page on my system says that stdout and stderr will be emailed to the user via /usr/sbin/sendmail - is that where your sendmail is?
thanks 4 answer..
well, your recipe has worked, but still can't make 'at' just pop me a message. What I did was made a script containing echo "hello", and made it executable... but 'at' doesn't trigger it, or if it do so, there's no stdout at all.
any idea?
sorry, just now I re-read your post, and the mail issue...but I don't have the sendmail (and it daemon) enabled, coz I don't use it.
so, do U know If there's any way to make messages go out thru the screen? -not emailed.
It's possible that someone else will know how to do this. From what I've seen though, at (like cron) assumes that stdout can't be guaranteed to point to a console so it diverts it internally.
I haven't tried anything like the following, but that's where stdout usually points:
sorry about the delay.. I'm makin also some google just to find out how it works.
its seems that 'at' wasn't made to put messages thru stdout.
traying to use your recipe:
echo "hello" >/dev/fd/1
Or,
echo "hello" >/dev/pts/2
..would U pelase tell me how to find out which device is my actual terminal? -I boot at runlevel 3 (text-mode), and then I startX and open a terminal, so, in fact there's 2 terminals: the one from X was launched, and the actual graphical one.
Thanks again 4 helping
The quickest way to find out where stdout is pointing to is to follow the links in /dev. For example:
Code:
$ ls -l /dev/stdout
lrwxrwxrwx 1 root root 4 2006-01-10 08:36 /dev/stdout -> fd/1
$ ls -l /dev/fd/1
lrwx------ 1 steve steve 64 2006-03-05 11:20 /dev/fd/1 -> /dev/pts/2
$ ls -l /dev/pts/2
crwx------ 1 steve tty 136, 2 2006-03-05 11:21 /dev/pts/2
Sorry, but I don't know of any schedulers that write to the console. Are you sure you're going to be logged in when the job runs? If so, can you let the job write to a log file and have a separate console open that is using tail to watch the file:
nopes... it doesn't work.
when I simply do:
$ echo "hello" > /dev/stdout
..the string is displayed in the actual console.
..but same thing thru 'at' doesn't work, I mean:
$ at now + 2 min
AT> echo "hello"
AT> [EOT]
doesn't display the string.. neither this way:
$ at now + 2 min
AT> script_containing_echo_"hello"_cmd.
AT> [EOT]
Yep, it looks like the only way to monitor the output on a console is to use something like the following:
Code:
$ touch /tmp/hello.log
$ at now + 2 min
warning: commands will be executed using (in order) a) $SHELL b) login shell c) /bin/sh
at> echo "hello" >> /tmp/hello.log
at> <EOT>
job 3 at 2006-03-05 11:58
$ tail -f /tmp/hello.log
hello
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.