Sponsored Content
Full Discussion: script to monitor directory
Top Forums Shell Programming and Scripting script to monitor directory Post 302227947 by ddreggors on Friday 22nd of August 2008 09:58:52 AM
Old 08-22-2008
Nice work otheus, I have been playing with that and, here is a test script that you can change as you need.

Some points,

1. The file must exist so "touch" test1.txt first
2. You will need to open 2 terminals and open the file you are testing in vi/vim on one and run this in another.
3. Use sudo or run as root (lsof requires root on RedHat)


Code:
#!/bin/bash

# Assuming you will use fileschaned output to get new filename 
# and also assuming that you will want to test THIS process before
# trying to incorperate fileschanged into the process...
# I wrote this as a test of the lsof side of the code.


# Assuming you test from your (not root) home directory and use sudo
# change as needed

WHO=`who am i |awk '{print $1}'`
DIR="/home/$WHO"
FILE=".test1.txt.swp"
CTR=0

while true
do
        # Attempt to sanely exit after 3 runs
        if [ "$CTR" -eq 3 ]
        then
                killall vim
        fi

        # Do you file open/closed logic here
        if [ -f $DIR/$FILE ]
        then
                LSOF=`lsof $DIR/$FILE`
        else
                unset LSOF
        fi
        echo -n `date +%s`:
        if [ -n "$LSOF" ]
        then
                echo "$DIR/$FILE is OPEN";
        else
                echo "$DIR/$FILE is CLOSED";
                exit
        fi
        CTR=`expr $CTR + 1`
done

here is the output:

1219411794:/home/ddreggors/.test1.txt.swp is OPEN
1219411794:/home/ddreggors/.test1.txt.swp is OPEN
1219411794:/home/ddreggors/.test1.txt.swp is OPEN
1219411794:/home/ddreggors/.test1.txt.swp is CLOSED

Last edited by ddreggors; 08-22-2008 at 11:18 AM..
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Hep with script to monitor directory

Hello, I am a newbie who is attempting to write a script to monitor a directory for a set of 3 files that I am expecting to get ftp'd. Occasionally, we suspend operations for maintenance etc. but we still get the files so there can be more than 1 set. If there is more than 1 set, I would like... (2 Replies)
Discussion started by: cmf00186
2 Replies

2. Shell Programming and Scripting

script to monitor files in a directory and sending the alert

Hi All, We are having important config files in an directory which was accessable by all /auto/config/Testbed/>ls config1.intial config2.intial config3.inital often we find that some of the lines are missing in config files, we doubt if some one is removing. I would like to write... (0 Replies)
Discussion started by: shellscripter
0 Replies

3. Shell Programming and Scripting

Monitor capacity of directory

Good morning. I have been attempting to find a way to monitor the capacity of a directory so that when it reaches 80% or higher I can send an event. I was able to find a script that does this for the whole drive by I can not seem to figure out how to do this for just a single directory. ... (1 Reply)
Discussion started by: LRoberts
1 Replies

4. AIX

monitor directory events

I'm am looking for a cheap way to trigger a script when a new file is written in a specific directory. AIX 5.3. It is a production system, so no kernel patching (i.e. inotify). Filemon and audtiing are too expensive. Thanks in advance. (2 Replies)
Discussion started by: pbillast
2 Replies

5. UNIX for Dummies Questions & Answers

Monitor directory and email

Hello all, Can anyone please guide / help me in the following task.... I have a directory where some external users will upload pdf files. The filename of these pdf will be of a particular format (<id>-<first name>_<last name>_<some number>.pdf) I want to make a script such that it takes... (6 Replies)
Discussion started by: dhawalkv
6 Replies

6. Shell Programming and Scripting

Directory Monitor in KSh

Hi, I need to write a directory monitor, i.e. a korn shell script which would Report changes to the directory contents, like: added file1, deleted file2, updated file3 , created subdir (optional)... There is no specific file pattern. So far I have written a little script... (1 Reply)
Discussion started by: olegkon
1 Replies

7. Shell Programming and Scripting

Script to monitor directory size of specific users

Hi, i am new to shell scripts, i need to write a script that can monitor size of directory of specific users. Please help. Thanks, Nitin (2 Replies)
Discussion started by: nicksrulz
2 Replies

8. Shell Programming and Scripting

Shell script to monitor new file in a directory and mail the file content

Hi I am looking for a help in designing a bash script on linux which can do below:- 1) Look in a specific directory for any new files 2) Mail the content of the new file Appreciate any help Regards Neha (5 Replies)
Discussion started by: neha0785
5 Replies

9. Shell Programming and Scripting

awk to monitor size in directory

i'm trying to find the most efficient way to monitor specific files in different directories in one go. /var/log/ /var/app/ /var/db/ each one of these directories can have subdirectories which need to be looked into as well. I want to find any file in this directory that has the name... (7 Replies)
Discussion started by: SkySmart
7 Replies

10. Shell Programming and Scripting

Bash script monitor directory and subdirectories for new pdfs

I need bash script that monitor folders for new pdf files and create xml file for rss feed with newest files on the list. I have some script, but it reports errors. #!/bin/bash SYSDIR="/var/www/html/Intranet" HTTPLINK="http://TYPE.IP.ADDRESS.HERE/pdfs" FEEDTITLE="Najnoviji dokumenti na... (20 Replies)
Discussion started by: markus1981
20 Replies
itruns(8)						      System Manager's Manual							 itruns(8)

NAME
itruns - set up files for use by the it command SYNOPSIS
/sbin/itruns file [file...] in run-state [, file [file...] in run-state] [,...] DESCRIPTION
The itruns program sets up scripts to be run by it(8). (These programs are typically used within system configuration and installation scripts.) The itruns command searches for /sbin/it.d/bin/file. If itruns finds the file, it creates one or more symbolic links from /sbin/it.d/run-state.d/file to /sbin/it.d/bin/file. The run-state argument can be a single run state, or it can be two run states separated by either the word or or the word and. If two run states are specified with the or keyword, itruns checks for (and creates, if necessary) a directory whose name combines both run states and places a link in that directory so that the file will be executed when the it program detects either state. You can collapse two or-sepa- rated states into a single expression; for example, 2 or 3 can be expressed as 23. If the and keyword is used, itruns checks for (and cre- ates, if necessary) two separate directories and places a link in each of them so that either state triggers execution of the file indepen- dently of the other state. If two or more files are specified for a single run-state argument, links are created for all of the files as indicated by the run-state argument. If two or more combinations of files and run states are specified as comma-separated expressions, itruns treats each combination individu- ally. RESTRICTIONS
The itruns command must be executed from the root directory (/). The command finds only files that are located in the /sbin/it.d/bin direc- tory. EXAMPLES
This example sets up the doconfig script to be run when the system is booted to run state 2: itruns doconfig in 2 Either of the command lines in this example sets up the doconfig and getdate scripts to be run when the system is booted to run state 2 or to run state 3: itruns doconfig getdate in 2 or 3 itruns doconfig getdate in 23 This example sets up the doconfig script to be run when the system is booted to run state 2 and again when the system comes to run state 3, the getdate script to be run only in run state 2, and the getsysname script to be run only in run state 3: itruns doconfig in 2 and 3, getdate in 2, getsysname in 3 SEE ALSO
Commands: it(8) itruns(8)
All times are GMT -4. The time now is 07:59 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy