AbdellahT
asked on
Linux script: monitoring directories.
I am not a linux scripting guy, therefore I need to know how to do the following steps in a linux script.
Files are daily uploaded to a directory “UploadDir”, it could be one, two or three new files, the script will automatically knows about the new files and move only the new files to a queue directory “QueueDir” with a sequence number so I can process one file at a time by first moving it to another directory “ProcessingDir”. I need this to happen dynamically.
Thanks a lot.
Abdellah
Files are daily uploaded to a directory “UploadDir”, it could be one, two or three new files, the script will automatically knows about the new files and move only the new files to a queue directory “QueueDir” with a sequence number so I can process one file at a time by first moving it to another directory “ProcessingDir”. I need this to happen dynamically.
Thanks a lot.
Abdellah
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
It sounds interesting, but I am using SUSE10 and I don't have access to the repos.
I could not find a good rpm for suse 10.
Thanks anyway.
Abdellah
I could not find a good rpm for suse 10.
Thanks anyway.
Abdellah
Maybe it is already installed, try if you can execute incrontab
ASKER
I found an rpm and installed, however I don't see /etc/incron.allow nor .deny. may be this done differenty I will find out.
Now I am still trying to understand the parameters: $@/ $#
are these varaibles that i need to replace with different values or how this works?
Thanks
by the way, I did read the README file .
Now I am still trying to understand the parameters: $@/ $#
are these varaibles that i need to replace with different values or how this works?
Thanks
by the way, I did read the README file .
no, this should be fine
$@ get's replaced with the path to the new file
$# get's replaced with the filename,
so $@/$# will give you the path, then a "/", then the filename.
It's just a flexible way for cases where you need the differents parts of the path seperated.
I just cross-checked and I believe the incron.deny and incron.allow files are debian specific addons to specify users allowed and not allowed to use incron, if you do not have them, it's possible that in SUSE everyone has the right to install incron jobs per default.
$@ get's replaced with the path to the new file
$# get's replaced with the filename,
so $@/$# will give you the path, then a "/", then the filename.
It's just a flexible way for cases where you need the differents parts of the path seperated.
I just cross-checked and I believe the incron.deny and incron.allow files are debian specific addons to specify users allowed and not allowed to use incron, if you do not have them, it's possible that in SUSE everyone has the right to install incron jobs per default.
ASKER
If you would like to help understan the command well, what will be the command for this?
once the two files LPL_1234567.zip and LPL_123456789.zip are done being written to directory "upload" I want to move them to directory "Queue" .
once the two files LPL_1234567.zip and LPL_123456789.zip are done being written to directory "upload" I want to move them to directory "Queue" .
ASKER
When I try saving a command to incrontab I get this message and nothing is saved.
"cannot move temporary table: Permission denied"
my /etc/permission.d/incron looks like this.
/etc/incron.d root:root 0755
/var/spool/incron incron:root 0755
/usr/bin/incrontab incron:root 4755
/usr/sbin/incrond root:root 0755
and I also tried
/etc/incron.d root:root 0755
/var/spool/incron root:root 0755
/usr/bin/incrontab root:root 4755
/usr/sbin/incrond root:root 0755
same error masage.
any idea?
I assume you are trying this as root?
if so, please try the following and attach the output:
strace -f crontab -e
then we see where the problem is,
best
ray
if so, please try the following and attach the output:
strace -f crontab -e
then we see where the problem is,
best
ray
ASKER
Could not implemented it.
ASKER
Thanks