Check to see if a file exists?


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Check to see if a file exists?
# 1  
Old 06-28-2011
Check to see if a file exists?

Hi. I'd like to have an IF-Then-Else statement where I can check to see if a file exists? We have the Bourne Shell by default. I'm looking for the syntax to do something like this:

if myfile.txt exists then

...my code

else

...my code

end if


Any help would be greatly appreciated. Thanks.
# 2  
Old 06-28-2011
Have a read of your man page of test.
This User Gave Thanks to Franklin52 For This Post:
# 3  
Old 06-28-2011
This User Gave Thanks to itkamaraj For This Post:
# 4  
Old 06-28-2011
Or:

Code:
if [ -f myfile.txt ]
then
          # Do something
else
          # Do something else
fi

See the man pages for your Shell for the syntax of "if" and "man test" for detail on the options. There are subtle variations between unix computers. The "-f" option is universal but you won't always find the "-e" option mentioned in post #3.
# 5  
Old 06-28-2011
Quote:
Originally Posted by methyl
Code:
if [ -f myfile.txt ]

The OP asked about if a file exists...
However a file may exist, but NOT be a regular file...
So,
Code:
if [ -a myfile.txt ]

Should be be considered as an alternative.

EDIT: @methyl, Not trying to teach you, because you could teach me a lot, just trying to point out to the OP a different test construct.

Last edited by AlphaLexman; 06-28-2011 at 09:54 PM..
# 6  
Old 06-28-2011
Quote:
Originally Posted by AlphaLexman
Code:
if [ -a myfile.txt ]

Should be be considered as an alternative.
Possibly being a bit too picky here....
Neither the POSIX nor the Linux man pages for test list -a as a valid syntax other than when used as an AND: expression -a expression . I believe that -a is deprecated and that -e is the preferred option to test if a file exists.

There is an interesting disclaimer in the SunOS version of the test manual page. It does list -a and -e, but indicates that neither is available under sh. This implies that the Bourne shell distributed by Sun is a customised version with the test command built-in rather than existing as an external binary. The OP didn't list their O/S, but if they are using some flavour of SunOS, then the -f option might be the best thing available, or they may need several specific tests if indeed they are sussing out non-regular files.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Check that at least one file exists in the directory.

There are some files with suffix dates like abc_20032019.dat abc_17032019.dat If at least one file exists then perform some operation else exit from execution. Korn shell ---------------------------------- array=($inputdir/abc*.dat) If ] ] then echo " file exits" else echo " file does... (10 Replies)
Discussion started by: Rajesh123
10 Replies

2. UNIX for Beginners Questions & Answers

Check if file exists

I need to check whether a file exists and has been changed. The file should contain a specific string. The file should also have been changed within the last ten seconds. How do I do that? (3 Replies)
Discussion started by: locoroco
3 Replies

3. Shell Programming and Scripting

To check if file exists

Hi, I have the below code written. However I am not getting the desired output I am checking if the particular path has file in it. #!/bin/bash ls -l /IRS2/IRS2_ODI/INFILE/*LS* 1>/dev/null 2>/dev/null if then echo $? echo "File Exists" fi ... (3 Replies)
Discussion started by: Shanmugapriya D
3 Replies

4. Shell Programming and Scripting

Check if a string exists in a file

bash in RHEL 6.3 I have these 2 files with strings. $ cat someStrings.txt LOGICAL1 HUNGARY2 PENGUIN2 MOBILE GUITAR1 MOUSE1 $$ cat checkIF.txt PENGUIN MOBILE $I need to search for strings in someStrings.txt file that matches the patterns in checkIF.txt file. The strings in... (7 Replies)
Discussion started by: kraljic
7 Replies

5. Shell Programming and Scripting

Check if file exists or not

Hi, I want to check if the file exists or not in the directory. i am trying below code but not working. File="/home/va59657/Account_20090213*.dat" echo "$File" if ]; then echo "file found" else echo "file not found" fi However i am getting file not found even if file exits as... (5 Replies)
Discussion started by: Vivekit82
5 Replies

6. Shell Programming and Scripting

Check whether file exists in directory

Hi guys, I am beginner trying to learn unix. So any help is welcomed. My requirement is to check whether is a file exists in a particular directory or not. The directory path and filename are taken dynamically with user interaction. So the program should continue only if the $filename... (1 Reply)
Discussion started by: maris_markur
1 Replies

7. Shell Programming and Scripting

File exists, but cannot be opened.How to check- whether it could be opened to read when it exists

Hi #Testing for file existence if ; then echo 'SCHOOL data is available for processing' else echo 'SCHOOL DATA IS NOT AVAILABLE FOR PROCESSING' : i wrote a script, where it begins by checking if file exists or not. If it exists, it truncates the database... (2 Replies)
Discussion started by: rxg
2 Replies

8. Shell Programming and Scripting

how to check to see if a file exists?

I want to write a script to see if various files exist. What I want to do is have the script search in various directories if a file exist, and if not, then output something like "/path/file does not exist". I don't actually know of how to check and see if a file exists or not. What I have in mind... (2 Replies)
Discussion started by: astropi
2 Replies

9. Shell Programming and Scripting

SFTP check if file exists

I lookifn for a way to SFTP a file based on the presence of a flag file . The logic is some thing like this in shelling terms IF ]; then download file.DDMM.dat FI The above is just the way of interpreting the logic. Just want to add that i do not have SSh access to the remote... (2 Replies)
Discussion started by: phpsnook
2 Replies

10. Shell Programming and Scripting

Check file exists from a shellscript

Hi, I have a list of files that I want to check to see if they exist and then count how many of these files exist, I also want to do the same for the files that arent found. I have done this by creating temp files see below but want ot do this using variables instead: for FILE in... (7 Replies)
Discussion started by: tonydsam
7 Replies
Login or Register to Ask a Question