How Can I Easily Determine If A File Has been Added to a Directory


 
Thread Tools Search this Thread
Top Forums UNIX for Advanced & Expert Users How Can I Easily Determine If A File Has been Added to a Directory
# 1  
Old 01-31-2007
How Can I Easily Determine If A File Has been Added to a Directory

I am uploading files that need to be processed prior to uploading. I will put the files in a directory. My question is how can I write an easy process to kick off a script once a file has been added? Is there an easy way to determine if a file has been added to a directory?

Thanks
# 2  
Old 01-31-2007
At the end of you script create a file in the same directory with a name you like.

At the start of your script search for files which are newer than the file you created in your previous run.

script:
-------------------------------------------------------------------
#!/usr/bin/ksh

cd /somedir
for FILE in `find ./* -prune -type f -newer ./TIMEFILE`
do
# do whatever you wanna do with the new files.
done

touch ./TIMEFILE
-------------------------------------------------------------------

if you want to include subdirectories as well replace
find ./* -prune -type f -newer ./TIMEFILE
by
find . -type f -newer ./TIMEFILE

The touch command makes sure the file TIMEFILE always has a timestamp of when the last run of your script ended.

The find command will find only find files which have been place in the directory of the timestamp time of TIMEFILE
# 3  
Old 01-31-2007
Need To Know In Real Time

Thanks SB008,

I need to know in Real Time. I should have mentioned that.

Thanks again for the reply
# 4  
Old 01-31-2007
Quote:
Originally Posted by goodmis
Thanks SB008,

I need to know in Real Time. I should have mentioned that.

Thanks again for the reply


Instead of
touch ./TIMEFILE
you use
date > ./TIMEFILE


At the beginning of the script something like:
OLDDATE=`cat ./TIMEFILE`
# 5  
Old 01-31-2007
Would I Need a Loop

Would I need a loop to check the directory to verify when the file was added?
# 6  
Old 01-31-2007
Quote:
Originally Posted by goodmis
I am uploading files that need to be processed prior to uploading. I will put the files in a directory. My question is how can I write an easy process to kick off a script once a file has been added? Is there an easy way to determine if a file has been added to a directory?
Since you are doing the upload, simply invoke the script as you finish the upload.
# 7  
Old 02-01-2007
I was told to run a cron job every 2 minutes and once it found the file I could have it transfer it. It seems like overkill to have a process running every 2 minutes looking for a file that may be added only once a day.

Thanks to all who answered
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to copy the two most recently added files to another directory - HP-UX?

Hello, I am attempting to find and copy the two most recently added files to a specific directory, that fit a specific format. I was able to find the command to list the two most recently added files in directory: ls -1t | head -n 2 The command lists the two files names in a vertical list,... (11 Replies)
Discussion started by: mattkoz
11 Replies

2. Shell Programming and Scripting

How to select all files added to a directory in the past 5 mins (HP-UX)?

Hey everyone, I need to select all files that were added to a specific directory in the past 5 mins and copy them over to a different directory. I am using HP-UX OS which does not have support for amin, cmin, and mmin. B/c of this, I am creating a temp file and will use the find -newer command... (7 Replies)
Discussion started by: mattkoz
7 Replies

3. Shell Programming and Scripting

Using filename to determine a prefix that needs to be added to string column on file?

Possible filenames: CDD_Whatever.txt DDD_Whatever.txt If the file prefix = CDD, I'd like to prefix every person ID (second column in my examples below) on the file with "c-" If the file prefix = DDD, I'd like to prefix ever person ID with "d-" Input: Desired Output: Any help... (2 Replies)
Discussion started by: lrluis
2 Replies

4. Shell Programming and Scripting

How to determine if there's a file in directory!

Hi All, I'm just wondering how can i determined if there's a file in directory and put it in a logs? dir="/home/test/" Please advise, Thanks, Use code tags, thanks. (1 Reply)
Discussion started by: nikki1200
1 Replies

5. Solaris

#1 added to directory on rmount DVD drive

Currently have an issue were we use a script to load a security .dat key. The script was failing to load stating "Unable to open directory". I ssh'd into the server and performed an ls -la on the /cdrom directory. I show the usual cdrom0 but the directory on the cd should be key but is showing... (0 Replies)
Discussion started by: hypp1e
0 Replies

6. Solaris

su: No shell/No directory! if sys is added to a users secondary group

Hi, When I include a user to the secondary group "sys" GID=3 in Solaris 9 OS I'm not able to login. I get these error. The user home directory and the shell exists. Is this because of any security hardening. # su - agent No directory! # su agent su: No shell # grep taddm /etc/passwd... (14 Replies)
Discussion started by: agent001
14 Replies

7. Shell Programming and Scripting

[Perl] Determine directory name

Hi there, I wonder if it is possible the determine a name of a directory which is different on various hosts. Let me try to explain. I have the directory /tmp/dir1/dir2/canchangedir. This directory name is different on various hosts. I need to use the directory name, independent from the... (2 Replies)
Discussion started by: ejdv
2 Replies

8. UNIX for Dummies Questions & Answers

How Can I Easily Determine If A File Has been Added to a Directory

I am uploading files that need to be processed prior to uploading. I will put the files in a directory. My question is how can I write an easy process to kick off a script once a file has been added? Is there an easy way to determine if a file has been added to a directory? Thanks (1 Reply)
Discussion started by: goodmis
1 Replies

9. UNIX for Advanced & Expert Users

cannot determine current directory

Hi, when I execute some simple commands on my solaris system, I am getting the following warning message: Could anybody tell me what could be the reason Ex:- If I give the command, which ls Warning: cannot determine current directory ... (15 Replies)
Discussion started by: axes
15 Replies

10. Shell Programming and Scripting

determine owner directory permissions from within the directory

From within a directory, how do I determine whether I have write permission for it. test -w pwd ; echo ? This doesn't work as it returns false, even though I have write permission. (4 Replies)
Discussion started by: Sniper Pixie
4 Replies
Login or Register to Ask a Question