check file exist before execution


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting check file exist before execution
# 1  
Old 04-25-2012
Bug check file exist before execution

Hi ,

I have a scripts which run at every 1 min and do some job.

this scripts look for the file in the directory and move in the other directory.

I want to write a line which forst check if the *.LOG file exist in the directory

Code:
if *.LOG exist
then
do for i in *.LOG
   load
   move
fi.

how can we check if the .LOG files exist in the directory and then execte else come out without failure, at present it gives error if it doesn't fine any file there.


Moderator's Comments:
Mod Comment Please use code tags, thanks!

Last edited by zaxxon; 04-25-2012 at 09:39 AM.. Reason: code tags
# 2  
Old 04-25-2012
Code:
   for file in *.LOG; do
       [ -e "$file" ] || exit 0

       ... the rest
    done

This way, if *.LOG does not expand (no file matches), then testing if '*.LOG' exists with -e will fail and your script will exit successfully and crontab should not email you Smilie
# 3  
Old 04-25-2012
Check out the -e switch of the test command. You can also take single square brackets to resemble the test command or use double square brackets to use the shell's internal test.
You can also have a look into the man page of test or your shell to see which switches are available.

And please use code tags, even this up there is just pseudo code, thanks.
# 4  
Old 04-25-2012
Something like:-
Code:
if [ -f *.LOG ]
then
   for i in *.LOG
   do
      load
      move
   done
fi

.... might do it, however it's not really necessary. You have a loop based on the file name too. If there are no files, then the loop will not execute.
# 5  
Old 04-25-2012
Quote:
Originally Posted by rbatte1
Something like:-
Code:
if [ -f *.LOG ]
then
   for i in *.LOG
   do
      load
      move
   done
fi

.... might do it, however it's not really necessary. You have a loop based on the file name too. If there are no files, then the loop will not execute.
I'm afraid you're wrong on both:
Code:
$ [ -e *.awk ]
[: 1: Twitter.awk: unexpected operator
$ for file in *.nonexistant; do echo "$file"; done
*.nonexistant

# 6  
Old 04-25-2012
Okay, I will admit that. You could:-
Code:
for i in `ls -1 *.LOG`
do
   load
   move
done

If there are no files, you get an error code and message from the ls command which you could choose to use or ignore.



Robin
# 7  
Old 04-25-2012
Hi Robin

How to use error code and message generated by ls, can you please give me an example
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Check for a file and touch if not exist

Hi, I've a situation where i need to check for the file existence and create a zero byte file based on the parameter,in some cases i need to touch and in some case i dont need to touch with zero byte file please help me on parameterizing this touch command?? Regards. San (2 Replies)
Discussion started by: sandeep karna
2 Replies

2. Shell Programming and Scripting

how to check file exist in a directory or not

HI folks, can any one tell me how to check whether the file is existed in a directory or not . let me tell you my requirement : if the file is existed i should display a one message or else i have to send a mail .. i have the mail logic .. but I'm failed to check file existence .. please... (5 Replies)
Discussion started by: sravan008
5 Replies

3. Shell Programming and Scripting

Check if file exist

Hi, I created following script to check if file exist: #!/bin/bash SrcDir=$1 SrcFileName=$2 SrcTimePeriod=$3 if ;then echo 1 else echo 0 fi I ran it like: /apps/Scripts/FileExist.sh /apps/Inbox file1 2nd_period_2010 Even file exist at that location, my above command is... (4 Replies)
Discussion started by: palak08
4 Replies

4. Shell Programming and Scripting

Check if file exist

Hi, I am trying to create a bash script which will check if file exist then remove that file else do nothing. I have to do same process for three files in same script. I have written code for one file and trying to run it. if then rm -r /user1/abc/File1 fi When I run this code it... (1 Reply)
Discussion started by: palak08
1 Replies

5. Shell Programming and Scripting

Check file exist issue

I have created two scripts, one with hardcoded and another one with extract from file instead of hardcoded, script:1 -------- #!/bin/ksh filename="$one/file1.dat" if then echo "$filename has arrived." >> $logfile else echo "$filename has NOT yet arrived." >> $logfile fi :> Result:... (4 Replies)
Discussion started by: gksenthilkumar
4 Replies

6. Shell Programming and Scripting

Check if file exist

Hi Does anybody know how I can check if a file exists i.e. see bellow, this doesn't work by the way and if tried countless variations on this file1=$one/file111.txt if then echo "Present" else echo "Not present" fi result : Not present (file is already present, eventhough its... (3 Replies)
Discussion started by: gksenthilkumar
3 Replies

7. Shell Programming and Scripting

Check Word if exist on file or not

Hello, I want to check if some word exist or not on some file By Example : word is : nixcraft file called : /root/shell.txt and i want to check if nixcraft word exist on /root/shell.txt file with if statement or another tool Any Ideas (5 Replies)
Discussion started by: LinuxCommandos
5 Replies

8. Programming

how to check if directory/file exist using c/c++

Hi there, how to check if directory/file exist using c/c++ under linux/unix. Thanks. Steven (2 Replies)
Discussion started by: steven88
2 Replies

9. Shell Programming and Scripting

how to check if directory/file exist using c/c++

Hi there,, how to check if directory/file exist using c/c++ under unix/linux? I can use access() under Window MFC. Thanks. Steven (1 Reply)
Discussion started by: steven88
1 Replies

10. UNIX for Dummies Questions & Answers

how to check if the file exist or not?

say i would like to check if the file is existed before i use rm command. How can i do it? i know if i can use find, but i would like to have a good interface (in a shell script) thks (3 Replies)
Discussion started by: gusla
3 Replies
Login or Register to Ask a Question