Sponsored Content
Top Forums Shell Programming and Scripting Help with script - run by cron Post 302172813 by richo king on Tuesday 4th of March 2008 05:08:07 PM
Old 03-04-2008
Help with script - run by cron

Hello,

I have a shell script that runs every minute to process incoming files delivered externally via SFTP to a directory. Basically the script works and processes the files however I get an error when a new file is delivered into the directory.

Please see my script below. A new file is delivered every day via SFTP from an external source which the script processes into the correct naming convention and it is then imported into our database using curl. We get a new file at 06:05 every day and I get a cron error message delivered to my mail box every morning. However if I then go and change the script and then test it using the same file with cron it will process correctly. However when I come in in the morning I will find that it has failed again - very frustrating!

I have no idea why this is! If someone can suggest anything that may remedy please let me know. I have also included a copy of the error message I get from Cron.

#!/bin/bash
TRANSDATA=/home/tsbftp/transaction_data
WORKING=/home/tsbftp/working
FILES=$(ls $TRANSDATA)
IMPORT=/home/arch3ftp/dfn-dev.arch3systems.com/html/import
for file in $FILES
do

#change owner of file to root - change permissions for root to full access
echo "$file" > /tmp/formatfile.nfo
chown root $TRANSDATA/"$file"
chmod 777 $TRANSDATA/"$file"

#Strip out the account number and place into a variable
AN=$(grep ^00 $TRANSDATA/"$file" | cut -c 3-18)

#set current date and time for file name convention and place into a variable
CUDA=$(date +%Y%m%d%k%M%S)
#Rename Current File with Required Format
mv $TRANSDATA/"$file" $TRANSDATA/$AN"_"$CUDA.a3i
sleep 2
mv $TRANSDATA/$AN"_"$CUDA.a3i $WORKING
echo $? >> /tmp/formatfile.nfo

cp $WORKING/$AN"_"$CUDA.a3i $IMPORT
curl -s http://dfn-dev.arch3systems.com/batches/import/$AN/$CUDA
done
exit 0

As you can see I've added in sleep 2 etc to try and remedy the error I get and tried renaming the file in place then moving etc. Please see error message below from Cron.

/etc/cron.d/format_file.sh:

mv: when moving multiple files, last argument must be a directory Try `mv --help' for more information.
cp: cannot stat `/home/tsbftp/working/1539590548547000_20080305': No such file or directory

I always get the mv error, however if I change the script to do the rename a different way it will work when I test it with cron! However sure enough it will fail when a new file comes in the next day!
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Can run script Manually, but not through Cron?

Hi all, I have a main script (called OracleCleanup) that runs some sql queries. that runs off a wrapper script which contains the sources for the login information and and JOB_HOME (the script is below). When I schedule this job in the cron the log says that it cannot open my list file, which... (4 Replies)
Discussion started by: MadHatter
4 Replies

2. Shell Programming and Scripting

Script to run 100jobs at a time from cron

here is my requirement. When ever the customer visitis the sore we want to look his information by his phone no. From the database side we are putting all the information in session pools. for example if we have 500 stores and at any second one customer is at the counter we can get atlease 500... (2 Replies)
Discussion started by: skneeli
2 Replies

3. UNIX for Advanced & Expert Users

reg no of instances of a script run using cron

I have the below code in a file called test.ksh and it is scheduled using cron forevery 5 min. when i see the cron out file for every 5 min it showing the no of process running are 2. same thing when i implement in another script which contains other code along with the below code , it showing as... (1 Reply)
Discussion started by: kamesh83
1 Replies

4. UNIX for Advanced & Expert Users

Need help with a script run by a cron job.

Hi, new to this forum and not sure if this is the right place to post. I'm new to cron jobs and scripts, and I need some help with a script to be used with a cron job. I already have a bot set up at a certain website address and need a script that the cron job will load every day that tells it to... (1 Reply)
Discussion started by: klawless
1 Replies

5. Shell Programming and Scripting

Script behaves different when run from cron vs. manually

Hey all, Just wanted to get some input on a script I am using to import files into a MySQL database. The process is pretty simple: my main server exports these files and FTPs them. I have a script that FTPs them to the machine running that runs this script. The FTP script runs without issue... (2 Replies)
Discussion started by: billtwild
2 Replies

6. Shell Programming and Scripting

how to run script? call other script? su to another user? make a cron?

Good morning. I am searching for "how-to"'s for some particular questions: 1. How to write a script in HP-UX 11. 2. How to schedule a script. 3. How to "call" scripts from the original script. 4. How to su to another user from within a script. This is the basics of what the... (15 Replies)
Discussion started by: instant000
15 Replies

7. HP-UX

script in cron didnt run

Hi, I have script in the cron which run at predefined time everyday. If the script fails then we get the mail and a log is created. But last night the script didnt run. If the script is even started it creates log so it seems the script never ran. It has never happened before. Th... (5 Replies)
Discussion started by: shipra_31
5 Replies

8. Shell Programming and Scripting

Need help to run a script on cron

I need someone to help me out to upload script on host but I have problem can anyone help me out ? (2 Replies)
Discussion started by: spit
2 Replies

9. UNIX for Advanced & Expert Users

Script run by cron gives no output

Hi All, I have a script which checks the status of HP Smart Array & then emails me the output. The script run fine when executed manually but I receive no output when configured in a cron job. The script is below: hpacucli ctrl slot=3 show config | mail -s "ARRAY STATUS-`date`"... (6 Replies)
Discussion started by: coolatt
6 Replies

10. Shell Programming and Scripting

Run script no more than twice daily WITHOUT cron

Can I run a script no more than twice a day without using cron? Maybe create a file when script is first run and check its date? (7 Replies)
Discussion started by: drew77
7 Replies
apticron(1)						      General Commands Manual						       apticron(1)

NAME
apticron - Generate a mail listing packages which are pending an upgrade SYNOPSIS
apticron [--cron] DESCRIPTION
apticron is a shell script which generates a mail with a list of all packages currently pending an upgrade, as well as summary of changes - using apt-listchanges - to a configurable Email address. apticron is mainly intended for automatic notification of pending security updates but can also be used in many other situations where timely updates are necessary. The --cron option is only meant to be used when invoked by cron in order to run no more than once a day. FILES
/etc/apticron/apticron.conf Configuration file, Email address to mail and profile for use with apt-listchanges are configurable. /etc/cron.d/apticron Cron job for executing apticron daily. /etc/cron.daily/apticron Fallback cron script for executing apticron (if no crond running or system down at designated time). /var/lib/misc/apticron.cron Time stamp file used by apticron when invoked with --cron option. SEE ALSO
apt-get(8), apt-listchanges(1), cron(8) AUTHOR
Apticron was initially developed by Colm MacCarthaigh <colm.maccarthaigh@heanet.ie> with contributions from Marc Sherman <msherman@projec- tile.ca>. Since 2006 it is maintained and improved by Tiago Bortoletto Vaz <tiago@debian.org>. apticron(1)
All times are GMT -4. The time now is 09:23 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy