While loop a file containing list of file names until the files are found?
Hi, I have a control file which will contain all filenames(300) files. Loop through all the file names in the control files and check the existence of this file in another directory(same server). I need to infinitely(2 hrs) run this while loop until all the files are found. Once a file is found, there is no need to look for that file again. If a file is not found I need to continue the loop for 2 hours to keep checking for files and if still not found then exit the script with error code( other than 0).
Hi, it can be done with arrays, like Don Cragun suggested. One way would be to use associative arrays (it could also be done with regular arrays). For example:
This is just a rudimentary example you could try, checks would need to be added and some extra code to break it off after two hours ...
--
Note that the method you are proposing has a potential flaw, if it can happen that a file is placed in the directory and suequently removed then it will still be wrongfully reported as present...
So it may be advisable to have an extra final check for all files that need to be present..
Last edited by Scrutinizer; 04-19-2015 at 04:04 AM..
Could I throw in a totally different suggestion? If you have a WANTED file with the required names and all the files should be in a single directory, could you follow this logic?:-
List all files in the directory
Use your WANTED file with grep to generate a list of all files that do exist.
Use grep again to check those still missing.
Something like this perhaps:-
It might mean fewer reads of the directory, although it does generate an intermediate file, so maybe, maybe not. There also might be confusion if your files are too similarly named, e.g. FileA arrives, but FileA1 is still missing, and this might not be spotted. You might need to mark the beginning and end of each line in the WANTED file with ^ & $ respectively.
Robin, while fgrep -x eliminates the problems with grep, the sleep must be 1 in order to finish early. And then there is great overhead compared to the array solution (that is even optimized by removing once matched elements).
This User Gave Thanks to MadeInGermany For This Post:
Hi ,
I'm trying to list the files and output is written to a file. But when I execute the command , the output file is being listed. How to exclude it ?
/tmp
file1.txt
file2.txt
ls -ltr |grep -v '-' | awk print {$9, $5} > output.txt
cat output.txt
file1.txt
file2.txt
output.txt (8 Replies)
I'm interested in writing a report script using BASH that searches all of the files in a particular directory for a keyword and printing a list of files containing this string...
In fact this reporting script would have searches for multiple keywords, so I'm interested in making multiple... (2 Replies)
Data files coming in different names in a file name called process.txt.
1. shipments_yyyymmdd.gz
2 Order_yyyymmdd.gz
3. Invoice_yyyymmdd.gz
4. globalorder_yyyymmdd.gz
The process needs to discard all the below files and only process two of the 4 file names available
... (1 Reply)
Below is my script code.which shows the environment name and then fetch the file from the ftp server but I am facing one issue.The script should be run in both way.We can pass the arguments with script and select the environment name then file name.Here the issue is I am not able to list the files... (1 Reply)
OS : RHEL 6.1
Shell : Bash
I have lots of files in /tmp/stage directory as show below.
Using a loop, I need to print all the filenames in this directory except those ending with a number. How can I do this ?
# pwd
/tmp/stage
#
#
# ls -l *
-rw-r--r--. 1 root root 0 Oct 7 18:38 stmt1... (2 Replies)
Hi,
I have a list of zipped files. I want to grep for a string in all files and get a list of file names that contain the string. But without unzipping them before that, more like using something like gzcat.
My OS is:
SunOS test 5.10 Generic_142900-13 sun4u sparc SUNW,SPARC-Enterprise (8 Replies)
Hi to all here ,
Excuse me for the lamer question but I need UNIX command for copying List of Files Under Different File Names !
for example I have this list:
new_001.jpg
new_002.jpg
new_003.jpg
.....
I want to copy all files that start with "new_" to the same directory but under... (7 Replies)
I have to rename a large number of files so that the name of each file corresponds to a code number that is given side by side in a list (textfile).
The list contains in column A the filename of the actual files to be renamed and in column B the name (a client code, 9 digits) that has to be... (7 Replies)
Hi All ,
I am having confusion in a shell script. Please guide me.
I need to get multiple files (number of files vary time to time, file names are separated by '|') using FTP get from the remote server.
Actually, i call the FTP function in a loop. At the last step, i need to move all the get... (3 Replies)
Hi,
I am trying to find the content of file using grep and find command and list only the file names
but i am getting entire file list of files in the directory
find . -exec grep "test" {} \; -ls
Can anyone of you correct this (2 Replies)