Using global environment variables inside a subshell

2008-10-01 Thread Steve Bertrand
Hi everyone,

I've fudged together a quick disk space monitor that I will run from
cron. Running the script works fine from the command line, but when I
run it from cron, the environment variable is empty.

Can someone point out the err of my ways?:

#!/bin/sh

/bin/df | \
/usr/bin/awk '{if($5 ~ %  $6 !~ proc) {used=$5} else {used=}; \
sub(/%/, , used); \
if(used  95) print $6  is at  used% on ENVIRON[HOSTNAME]!}' | \
mail -s Disk usage action required [EMAIL PROTECTED]

Cheers!

Steve
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: Using global environment variables inside a subshell

2008-10-01 Thread Lowell Gilbert
Steve Bertrand [EMAIL PROTECTED] writes:

 I've fudged together a quick disk space monitor that I will run from
 cron. Running the script works fine from the command line, but when I
 run it from cron, the environment variable is empty.

 Can someone point out the err of my ways?:

 #!/bin/sh

 /bin/df | \
 /usr/bin/awk '{if($5 ~ %  $6 !~ proc) {used=$5} else {used=}; \
 sub(/%/, , used); \
 if(used  95) print $6  is at  used% on ENVIRON[HOSTNAME]!}' | \
 mail -s Disk usage action required [EMAIL PROTECTED]

The environment under which cron jobs are run is very spare.  It's
more or less limited to the variables that are listed in the
crontab(5) manual.  You need to get the value into your script another
way.  In this case, I would use hostname(1).

-- 
Lowell Gilbert, embedded/networking software engineer, Boston area
http://be-well.ilk.org/~lowell/
___
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to [EMAIL PROTECTED]