01-22-2007
help with crontab
i have a ksh script that creates messages in a temp directory and then sends them out using the sendmail command and i'm trying to set it up to run every night with crontab.
So the basic gist of the script is
#create temp dir and messages
...
#loop through each message and send using sendmail
ls $dateFolder/Group/* | \
while read tempMsg
do
cat $tempMsg | /usr/lib/sendmail -t
done
When I run the script from the command line in my home directory it works perfectly, but then when I edit my crontab file with something like:
48 23 * * *
/home/users/campbelr/ddts_reminder.ksh /home/users/campbelr/ddts_reminder_config.txt
the temp directory and files are created, but the sendmail command does not execute. I'm an unix shell scripting newbie, so i don't understand how this could happen. is it an environment difference? any ideas?
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hi
I have a shell script which works fine at the command line
and does works in crontab also but does not send the output to
mail as other scripts do by default.
10 1 * * * /export/home/test/report_script
by default should send the output to mail but the script
runs OK and the output... (1 Reply)
Discussion started by: run_time_error
1 Replies
2. UNIX for Dummies Questions & Answers
dear all ,
does any one now how can i become sure that the crontab that i put was working successfully not by looking for thr result of the sheduled task but from a log for the crontab or something similar
and i need to check that the cron i wrote is correct
00 15 * * 0,1,2,3,6... (2 Replies)
Discussion started by: habuzahra
2 Replies
3. UNIX for Dummies Questions & Answers
How can I run "crontab" (parameters) every 6 hours on solaris machine?
Thanks (1 Reply)
Discussion started by: gen4ik
1 Replies
4. UNIX for Dummies Questions & Answers
hi all
how to schedule the crontab file in unix? (2 Replies)
Discussion started by: ss4u
2 Replies
5. Shell Programming and Scripting
Hi All,
I've a shell script which calls a Sybase stored procedure to do some functionality. I want to schedule the running of this script by crontab. I'm using Solaris 5.8. When i executed the following command
crontab -l
i got the output as
crontab: can't open your crontab file
How... (10 Replies)
Discussion started by: sumesh.abraham
10 Replies
6. UNIX for Advanced & Expert Users
hi,
I run a .sh file using crontab. I need to know the path of the file . Previously when I run the file alone , i used "pwd" but now when using crontab it gives the temp directory of the file.
Is there any way I can find the absolute path of the file when i execute it ?
Regards,
Ranga (7 Replies)
Discussion started by: r_W213
7 Replies
7. UNIX for Advanced & Expert Users
Dear All
jobs are scheduled in crontab . To view this I use crontab -l . But suddenly today I am not able to see any jobs that is being scheduled in crontab. when I type crontab -l , I am seeing nothing.I am not logging through admin user(i dont have it).But I can schedule jobs through... (3 Replies)
Discussion started by: tkbharani
3 Replies
8. Shell Programming and Scripting
I have a crontab entry,but it is not working.
Can anybody help me in this regard?? (2 Replies)
Discussion started by: Sourav_Paul
2 Replies
9. UNIX for Dummies Questions & Answers
Hi, can someone explain the differences between using the at and crontab commands. When would you use one command over the other?
TIA
Dom (1 Reply)
Discussion started by: domburf69
1 Replies
10. Shell Programming and Scripting
Hi,
I am working with oracle, and want to make a scheduler program by using cron job..
I've done with shell script that calls oracle stored procedure. It works.
However, when I call the script through crontab, it is failed. :(
Here is the error message:
Cron: The previous message... (2 Replies)
Discussion started by: rmard
2 Replies
SMRSH(8) System Manager's Manual SMRSH(8)
NAME
smrsh - restricted shell for sendmail
SYNOPSIS
smrsh -c command
DESCRIPTION
The smrsh program is intended as a replacement for sh for use in the ``prog'' mailer in sendmail(8) configuration files. It sharply limits
the commands that can be run using the ``|program'' syntax of sendmail in order to improve the over all security of your system. Briefly,
even if a ``bad guy'' can get sendmail to run a program without going through an alias or forward file, smrsh limits the set of programs
that he or she can execute.
Briefly, smrsh limits programs to be in a single directory, by default /usr/lib/sendmail.d/bin/ allowing the system administrator to choose
the set of acceptable commands, and to the shell builtin commands ``exec'', ``exit'', and ``echo''. It also rejects any commands with the
characters ``', `<', `>', `;', `$', `(', `)', `
' (carriage return), or `
' (newline) on the command line to prevent ``end run'' attacks.
It allows ``||'' and ``&&'' to enable commands like: ``"|exec /usr/local/bin/filter || exit 75"''
Initial pathnames on programs are stripped, so forwarding to ``/usr/bin/vacation'', ``/usr/bin/vacation'', ``/home/server/mydir/bin/vaca-
tion'', and ``vacation'' all actually forward to `/usr/lib/sendmail.d/bin/vacation''.
System administrators should be conservative about populating the /usr/lib/sendmail.d/bin/ directory. For example, a reasonable additions
is vacation(1), and the like. No matter how brow-beaten you may be, never include any shell or shell-like program (such as perl(1)) in the
/usr/lib/sendmail.d/bin/ directory. Note that this does not restrict the use of shell or perl scripts in the /usr/lib/sendmail.d/bin/
directory (using the ``#!'' syntax); it simply disallows execution of arbitrary programs. Also, including mail filtering programs such as
procmail(1) is a very bad idea. procmail(1) allows users to run arbitrary programs in their procmailrc(5).
COMPILATION
Compilation should be trivial on most systems. You may need to use -DSMRSH_PATH="path" to adjust the default search path (defaults to
``/bin:/usr/bin'') and/or -DSMRSH_CMDDIR="dir" to change the default program directory (defaults to ``/usr/lib/sendmail.d/bin/'').
FILES
/usr/lib/sendmail.d/bin/ - default directory for restricted programs on SuSE Linux
SEE ALSO
sendmail(8)
$Date: 2004/08/06 03:55:35 $ SMRSH(8)