06-26-2007
As mentioned, normal reason for this is the environment (eg all the strings you see printed when you type "set") is minimal when run as a cronjob. This requires you to set any environment variables you will rely on directly in your script.
Also, you are missing the normal "#!/bin/sh" line from the start of your script, this tells the operating system which interpreter/shell to use to run your script.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I have a very basic script that essentially sends a log file, via FTP, to a backup server. My cron entry to run this every night is:
55 23 * * * /usr/bin/archive_logs
The script runs perfectly when executed manually, and actually worked via cron for about three weeks. However, it mysteriously... (3 Replies)
Discussion started by: cdunavent
3 Replies
2. Shell Programming and Scripting
Hi all-
I'm trying to search through some .gz log files to verify certain feeds have passed through our app.
I have a small script that I wrote in hopes that I could automate the checking but haven't been able to get the zgrep to work. When I copy it to the command line directly it works... (2 Replies)
Discussion started by: Cailet
2 Replies
3. Shell Programming and Scripting
/usr/bin/find $SEARCH_DIR -daystart \( \( -name 'KI*' -a -name '*.csv' \) -o -name '*_xyz_*' \) -mtime $DAYS_AGO -printf %f -printf "\n" | sort -r > $FILES
The above command gives different results when run on a cron job. When run manually the result is accurate. (2 Replies)
Discussion started by: nuthalapati
2 Replies
4. Shell Programming and Scripting
Ubuntu 9.10 is my linux distro
Based on forums they say that the problem is with environment .
here is my case:
login as user, then sudo -s
using this command: s3cmd put file s3://bucket >>worked!
now here is the simple script intended for testing:
#! /bin/bash
env >/tmp/cronjob.log... (1 Reply)
Discussion started by: qwerty20
1 Replies
5. UNIX for Dummies Questions & Answers
Hey guys. Hopefully this is an easy one but having reference similar problems on the web I still can't fix it.
I am doing a recursive find and replace from a script. Of course I could just run the damn thing from the command line but it's bugging me now and want to get it working.
grep -rl... (4 Replies)
Discussion started by: anthonyjstewart
4 Replies
6. Shell Programming and Scripting
I am working with a sh script on a solaris 9 zone (sol 10 host) that grabs information to build the configuration command line. the variables Build64, SSLopt, CONFIGopt, and CC are populated in the script. the script includes
CC=`which gcc`
CONFIGopt=' --prefix=/ --exec-prefix=/usr... (8 Replies)
Discussion started by: oly_r
8 Replies
7. AIX
Hi All,
I have a many cron jobs scheduled in my AIX server.
Only one cron not getting executed in the same server but that job is good on all other servers.
Here is my cron , which will keep last 30 files and remove others.,
00 00 * * * /usr/bin/find /tmp/reports/nmon -name *.nmon -mtime... (9 Replies)
Discussion started by: Thala
9 Replies
8. Shell Programming and Scripting
OSX 10.9
I am building a script that evaluates the difference between 2 files. Here is a command that does not work transparently.
Running this command in Terminal yields great results; however when I put that line in a .sh script, I get the errors shown below. Am I doing something silly?
... (1 Reply)
Discussion started by: sudo
1 Replies
9. UNIX for Dummies Questions & Answers
Hello gurus,
I am making what I think is a simple db2 call from within a shell script but I am having difficulty producing the desired
report when I run the script shown below from a shell script in cron. For example, my script and the crontab file setup
is shown below:
#!/bin/ksh
db2... (3 Replies)
Discussion started by: okonita
3 Replies
10. Shell Programming and Scripting
Oracle Linux 6.
Trying to set up a simple monitoring of memory usage. This command does exactly what I want at the command line:
echo $(date +%Y-%m-%d" "%H:%M:%S) $(grep PageTables /proc/meminfo) >> /home/oracle/meminfo.logBut when I put it in my crontab:
* * * * * echo $(date +%Y-%m-%d"... (2 Replies)
Discussion started by: edstevens
2 Replies
LEARN ABOUT CENTOS
service
service(8) System Manager's Manual service(8)
NAME
service - run a System V init script
SYNOPSIS
service SCRIPT COMMAND [OPTIONS]
service --status-all
service --help | -h | --version
DESCRIPTION
service runs a System V init script in as predictable environment as possible, removing most environment variables and with current working
directory set to /.
The SCRIPT parameter specifies a System V init script, located in /etc/init.d/SCRIPT. The supported values of COMMAND depend on the
invoked script, service passes COMMAND and OPTIONS it to the init script unmodified. All scripts should support at least the start and
stop commands. As a special case, if COMMAND is --full-restart, the script is run twice, first with the stop command, then with the start
command.
service --status-all runs all init scripts, in alphabetical order, with the status command.
If the init script file does not exist, the script tries to use legacy actions. If there is no suitable legacy action found and COMMAND is
one of actions specified in LSB Core Specification, input is redirected to the systemctl. Otherwise the command fails with return code 2.
FILES
/etc/init.d
The directory containing System V init scripts.
ENVIRONMENT
LANG, TERM
The only environment variables passed to the init scripts.
SEE ALSO
chkconfig(8), ntsysv(8), systemd(1), systemctl(8), systemd.service(5)
Jan 2006 service(8)