Check if file exist


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Check if file exist
# 1  
Old 12-30-2010
Check if file exist

Hi,

I created following script to check if file exist:


#!/bin/bash
SrcDir=$1
SrcFileName=$2
SrcTimePeriod=$3
if [ -e $SrcDir/$SrcFileName_$SrcTimePeriod ];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 returning 0. If I hardcode values in script then it runs fine.

Am I missing something here?

Thanks!
# 2  
Old 12-30-2010
Code:
$SrcFileName_

It considers that the whole variable. Instead try
Code:
${SrcFileName}_

That's why you should always put {} around variable names.

Heck, quote the whole thing for good measure too -- then it'll work on filenames with spaces.

Code:
if [ -e "${SrcDir}/${SrcFileName}_${SrcTimePeriod}" ];then

This User Gave Thanks to Corona688 For This Post:
# 3  
Old 12-30-2010
Thanks for your reply.

I have one more question:

I want to use return code in another program. Right now I am using Echo to get 1 or 0. How can I use return code so that I can capture 1 or 0.

Thanks!
# 4  
Old 12-30-2010
you have to use:
exit 0
else
exit 1...

In the next script you can intercept the exit code whit a special variable "$?"

example:

First script
...
exit 1
...

Second script
...
if [[ $? == 1 ]]; then
echo -e "First script has exited with '1'"
fi
...
# 5  
Old 12-30-2010
Anyway, a script returns the return code of last command so your script can be much simplier, like:
Code:
#!/bin/bash
SrcDir=$1
SrcFileName=$2
SrcTimePeriod=$3
[ -e "${SrcDir}/${SrcFileName}_${SrcTimePeriod}" ]

Or without intermediate variables:
Code:
#!/bin/bash
[ -e "${1}/${2}_${3}" ]

Anyway, it's more just an expression than a script and you could code it directly in the calling script (if it's shell).
Note that the -e test refers to any file, for a regular file, preferably use -f
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

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 if *.LOG exist then do for i in *.LOG load ... (7 Replies)
Discussion started by: guddu_12
7 Replies

3. 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

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