Sponsored Content
Top Forums UNIX for Dummies Questions & Answers Bash script dont works when executed as cronjob Post 302894392 by CarloM on Tuesday 25th of March 2014 09:16:57 AM
Old 03-25-2014
Quote:
Originally Posted by sea
Cronjobs dont have access to the environment (eg: the $PATH variable, so it wont find 'ls' and others), so you must provide FULL & ABSOLUTE PATH for each command that is not a shell builtin.
That's not entirely accurate - using full path names is a good idea, but while cron won't execute the user profile, it will (if it's POSIX-compliant) set a basic default $PATH like /bin:/usr/bin. It also might run /etc/environment, although I'm not sure if that's POSIX or not (AIX and Debian seem to, anyway).

Last edited by CarloM; 03-25-2014 at 10:22 AM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

bash scripting cannot executed in crontab

hi guys, i have a problem. a week ago i made a successful crontab that execute bash scripting daily, it worked well but now, it doesn't work at all, in the mail i have: " /home/jimmy/cha/scripts/cekpderr produced the following output: lagi jalan /home/jimmy/cha/scripts/cekpderr:... (6 Replies)
Discussion started by: jimmbp
6 Replies

2. Shell Programming and Scripting

how to make a bash script that can be executed by people simultaneously?

dear friends, i want to make a bash script that can be executed by many people simultaneously. do you have any idea to make it? there will be many dependent-variables(which is input from people) in the scripts. i am thinking about a random temporary file that created by the bash script each... (4 Replies)
Discussion started by: jimmbp
4 Replies

3. Shell Programming and Scripting

Works from bash prompt, but not from script!

I'm trying to use unison from bash on windows with cygwin. I don't know if this is a cygwin question, bash question or unison question. Since I always get reprimanded by the cygwin mailing list for assuming it is a cygwin problem, I'll assume it is a bash question. The following commands work... (7 Replies)
Discussion started by: siegfried
7 Replies

4. Shell Programming and Scripting

Script works with bash 3.0 but not 3.2.

Hello, So my knowledge of bash scripting is not that great and I have been trying to solve this problem on my own for awhile to no avail. Here's the error I get when running it with an OS that uses bash 3.2.x: testagain.sh: line 10: *-1: syntax error: operand expected (error token is... (2 Replies)
Discussion started by: forkandspoon
2 Replies

5. Shell Programming and Scripting

can't executed bash from PHP..

dear list, i've just write a simple php script to add user to my iptables, but some times it works and it dosn't work,, here's my script for my adduser.php <?php exec('/var/www/html/backup.sh'); $hash = "# $_POST\n"; $ip = "-A INPUT -p tcp -m tcp -s $_POST -d 10.10.105.18 --dport 8080 -j... (2 Replies)
Discussion started by: ridwanfi
2 Replies

6. AIX

Script not getting executed via cron but executes when executed manually.

Hi Script not getting executed via cron but executes successfully when executed manually. Please assist cbspsap01(appuser) /app/scripts > cat restart.sh #!/bin/ksh cd /app/bin date >>logfile.out echo "Restart has been started....." >>logfile.out date >>logfile.out initfnsw -y restart... (3 Replies)
Discussion started by: samsungsamsung
3 Replies

7. Shell Programming and Scripting

Calling bash script works when called manually but not via Cron?

Hi, I've got a Bash backup script I'm trying to run on a directory via a cron job nightly. If I ssh in and run the script manually it works flawlessly. If I set up the cron to run evertything is totally messed up I don't even know where to begin. Basically the path structure is ... (6 Replies)
Discussion started by: wyclef
6 Replies

8. Shell Programming and Scripting

Script in bash that works only some of the time

I ran this script yesterday (in the background) /usr/bin/nohup myfilelocation/myscriptname.sh & the script worked perfectly. i ran it today (also in the background) and just sat there. So i killed it and ran it normally and it worked perfectly. Anyone suggest why it just sat there and... (8 Replies)
Discussion started by: twinion
8 Replies

9. Shell Programming and Scripting

Linux/bash Script only working if executed from shell prompt

Hi, maybe I'm asking a VERY dumb question, but would anybody out there tell me, why this f****** script won't work if executed as a cronjob, but works fine if executed from a shell prompt? #! /bin/bash set PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin date >>... (3 Replies)
Discussion started by: beislhur
3 Replies

10. UNIX for Beginners Questions & Answers

Command works interactively but not in bash script

The below command works in the terminal interactively but not as part of a bash script. I though maybe I needed to escape the "$dir" so it isn't interpreted literally, but that's not it. Thank you :). interactively in terminal dir=/path/to new=$(ls "$dir"/*.csv -tr | tail -n 1) && echo... (6 Replies)
Discussion started by: cmccabe
6 Replies
eatmydata(1)						      General Commands Manual						      eatmydata(1)

NAME
eatmydata - transparently disable fsync() and other data-to-disk synchronization calls SYNOPSIS
eatmydata [--] command [ command arguments ... ] DESCRIPTION
eatmydata runs a command in the environment where data-to-disk synchronization calls (like fsync(), fdatasync(), sync(), msync() and open() O_SYNC / O_DSYNC flags) have no effect. LD_PRELOAD library libeatmydata overrides respective C library calls with custom functions that don't trigger synchronization but return success nevertheless. You may use eatmydata in two ways. In normal mode, just execute eatmydata directly and pass a command-to-be-run and its arguments via com- mand line. In order to use symlink mode, create a symlink to /usr/bin/eatmydata with the filename (a.k.a basename) of another program in the PATH and execute eatmydata via that symlink. Then eatmydata will find that program in the PATH and run it in the libeatmydata environ- ment repassing all command line options. OPTIONS
Please note that eatmydata does not process any command line options in symlink mode. All command line options will be repassed to the underlying executable as-is. command The command to execute. It may be either a full path or the name of the command in PATH. In case command cannot be found in PATH, eatmydata will fail. command arguments Arbitrary number of arguments to pass to the command being executed. -- Optional command separator for compatibility with similar utilities. Ignored at the moment. EXAMPLES
Given PATH is /usr/bin and both /usr/bin/aptitude and /usr/bin/eatmydata are installed, the following: $ ln -s /usr/bin/eatmydata ./aptitude $ ./aptitude moo is equivalent to: $ eatmydata -- aptitude moo Therefore, you may use symlink mode to automatically run specific programs in the libeatmydata environment whenever you run them from PATH. For example, given standard PATH settings, just do: # ln -s /usr/bin/eatmydata /usr/local/bin/aptitude and enjoy sync-free aptitude system-wide. AUTHOR
The eatmydata wrapper around libeatmydata LD_PRELOAD library was written by Modestas Vainius <modax@debian.org> November 2010 eatmydata(1)
All times are GMT -4. The time now is 01:56 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy