02-25-2014
This is asked very often and this is usually a problem because when the cronjob is run, it will not login with the environment that is set, when you do that manually. This also means, you will not have a $PATH or a very short list of paths in there set.
It is often recommended to use full paths in Cronjobs or have your needed environment being set/sourced at the beginning of your script.
Have a read here:
cron and crontab | Unix Linux Forums | Answers to Frequently Asked Questions
This User Gave Thanks to zaxxon For This Post:
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hello Gurus,
I've been tasked with solving a problem at my new job and I'm stumped. We've got a script that dynamically builds an oracle export parameter files and then runs export from the shell. it runs fine when using the shell, but will NOT run (fails in one spot everytime) when entered... (1 Reply)
Discussion started by: jsheehan223
1 Replies
2. UNIX for Dummies Questions & Answers
Hi,
I made this script for TRU Unix 5.1 OS based Node.
When the script was run manually all the commands were running properly. But when it was run from Crontab, one command is not running.
This command is not running when the script is running from Crontab:
#... (2 Replies)
Discussion started by: mystition
2 Replies
3. UNIX for Dummies Questions & Answers
Hi,
Whenever I run crontab -e from my remote terminal logged onto a SunOS 5.6 machine I get this:
root@beauvert:~> crontab -e
3495
-----
I think I have to set the terminal/editor. These are my environment variables:
root@beauvert:~> set
EDITOR vi
PATH ... (5 Replies)
Discussion started by: mojoman
5 Replies
4. Red Hat
Hi,
I'm trying the backup a few information commands of my Check Point FW (it's on a SPLAT linux machine). This is the script I wrote:
#!/bin/bash
cd /var/tmp/
file1=netstat_`/bin/date +%d%m%y`.txt
file2=ifconfig_`/bin/date +%d%m%y`.txt
file3=cpstatos_`/bin/date +%d%m%y`.txt... (2 Replies)
Discussion started by: nirsh
2 Replies
5. Shell Programming and Scripting
I am trying to use the CRON utility in Fedora 11 & CentOS...
I intend to run a script which pops up a warning message every hour and i made the following entry using "CRONTAB -e "
* * * * * sh /bin/myscript.sh
But this does not seem to be running.
Another thing to note is that,... (4 Replies)
Discussion started by: Vabiosis
4 Replies
6. Shell Programming and Scripting
Hi,
Can someone please help me here with this one.
This is my script:
# more tosh.sh
#!/usr/bin/ksh
clear
. /home/oracle/.profile
echo "Good morning, world."
export ORACLE_HOME=/u01/app/oracle/product/9.0.1
export PATH=$ORACLE_HOME/bin:/usr/local/bin
export ORACLE_SID=xxxx
... (11 Replies)
Discussion started by: santoshpayal
11 Replies
7. Shell Programming and Scripting
Hi, I posted this in the Solaris forum but I think this one would be more appropriate.
I created a script starting with the following lines:
#!/usr/bin/ksh
flag=n
export flag
typeset -i quant=0
(...)
When running it I'm getting the following 2 errors:
/tmp/tstscript/testfail.ksh:... (9 Replies)
Discussion started by: Cvg
9 Replies
8. UNIX for Advanced & Expert Users
Hi,
I have created the below script,
set -x
# Set the Path of Environment file
ENV_FILE_DIR=/opt/app/p1trp1c1/sybase/ecdwqdm/xrbid/QDM_Prod/bin
LOG_DIR=/opt/app/p1trp1c1/sybase/ecdwqdm/xrbid/QDM_Prod/log
export ENV_FILE_DIR
export LOG_DIR
# Set Audit Environment
. ${ENV_FILE_DIR}/QDM.env... (8 Replies)
Discussion started by: yohasini
8 Replies
9. UNIX for Dummies Questions & Answers
Hi All,
I am having the below script to be run from crontab, it it doesnt run.
1 * * * * /home/cobr_ext/test.sh > /home/cobr_ext/temp.txt
when i run i manally it runs without any issues.
Could please help me as to why doesnt it run the script.:( (7 Replies)
Discussion started by: abhi_123
7 Replies
10. UNIX for Dummies Questions & Answers
Hi!
I'm using a RaspberryPi with standard Raspbian.
Currently I'm working on some sort of weather station.
For now I have three python scripts - one which is updating txt files for website - update1m.py ( it will not be necessary in few next days so I'll delete it) , second one for updating... (4 Replies)
Discussion started by: bartocham
4 Replies
LEARN ABOUT LINUX
crontab
CRONTAB(1) General Commands Manual CRONTAB(1)
NAME
crontab - maintain crontab files for individual users (Vixie Cron)
SYNOPSIS
crontab [ -u user ] file
crontab [ -u user ] [ -i ] { -e | -l | -r }
DESCRIPTION
crontab is the program used to install, deinstall or list the tables used to drive the cron(8) daemon in Vixie Cron. Each user can have
their own crontab, and though these are files in /var/spool/cron/crontabs, they are not intended to be edited directly.
If the /etc/cron.allow file exists, then you must be listed (one user per line) therein in order to be allowed to use this command. If the
/etc/cron.allow file does not exist but the /etc/cron.deny file does exist, then you must not be listed in the /etc/cron.deny file in order
to use this command.
If neither of these files exists, then depending on site-dependent configuration parameters, only the super user will be allowed to use
this command, or all users will be able to use this command.
If both files exist then /etc/cron.allow takes precedence. Which means that /etc/cron.deny is not considered and your user must be listed
in /etc/cron.allow in order to be able to use the crontab.
Regardless of the existance of any of these files, the root administrative user is always allowed to setup a crontab. For standard Debian
systems, all users may use this command.
If the -u option is given, it specifies the name of the user whose crontab is to be used (when listing) or modified (when editing). If this
option is not given, crontab examines "your" crontab, i.e., the crontab of the person executing the command. Note that su(8) can confuse
crontab and that if you are running inside of su(8) you should always use the -u option for safety's sake.
The first form of this command is used to install a new crontab from some named file or standard input if the pseudo-filename ``-'' is
given.
The -l option causes the current crontab to be displayed on standard output. See the note under DEBIAN SPECIFIC below.
The -r option causes the current crontab to be removed.
The -e option is used to edit the current crontab using the editor specified by the VISUAL or EDITOR environment variables. After you exit
from the editor, the modified crontab will be installed automatically. If neither of the environment variables is defined, then the default
editor /usr/bin/editor is used.
The -i option modifies the -r option to prompt the user for a 'y/Y' response before actually removing the crontab.
DEBIAN SPECIFIC
The "out-of-the-box" behaviour for crontab -l is to display the three line "DO NOT EDIT THIS FILE" header that is placed at the beginning
of the crontab when it is installed. The problem is that it makes the sequence
crontab -l | crontab -
non-idempotent -- you keep adding copies of the header. This causes pain to scripts that use sed to edit a crontab. Therefore, the default
behaviour of the -l option has been changed to not output such header. You may obtain the original behaviour by setting the environment
variable CRONTAB_NOHEADER to 'N', which will cause the crontab -l command to emit the extraneous header.
SEE ALSO
crontab(5), cron(8)
FILES
/etc/cron.allow
/etc/cron.deny
/var/spool/cron/crontabs
There is one file for each user's crontab under the /var/spool/cron/crontabs directory. Users are not allowed to edit the files under that
directory directly to ensure that only users allowed by the system to run periodic tasks can add them, and only syntactically correct
crontabs will be written there. This is enforced by having the directory writable only by the crontab group and configuring crontab com-
mand with the setgid bid set for that specific group.
STANDARDS
The crontab command conforms to IEEE Std1003.2-1992 (``POSIX''). This new command syntax differs from previous versions of Vixie Cron, as
well as from the classic SVR3 syntax.
DIAGNOSTICS
A fairly informative usage message appears if you run it with a bad command line.
cron requires that each entry in a crontab end in a newline character. If the last entry in a crontab is missing the newline, cron will
consider the crontab (at least partially) broken and refuse to install it.
AUTHOR
Paul Vixie <paul@vix.com>
4th Berkeley Distribution 19 April 2010 CRONTAB(1)