I added the echo in the loop to show that when nothing matches the N??? pattern the fn variable assumes value of N??? and that is the root of the question - when using
construct I thought the pattern evaluation happens before do and shell would simply not enter the do loop part when nothing matches.
Some, shells have an option (as an extension to the standards) that does remove globbing patterns that do not match any existing files. For instance, if you are using a recent bash, the code:
would not run the loop at all if N??? does not match any files in the current working directory, while the other options work with any shell based on Bourne shell syntax:
which works fine as long as you know that there will never be a file actually named N???. (Note that the break could be replaced by a continue and get the same results.) Or, you can use:
(Note that you need to use continue in this form (not break) to protect yourself in case a file is removed while the loop is running (you just want to skip processing the file that was removed; not skip processing other remaining files with names that sort after the file that was removed).
These 2 Users Gave Thanks to Don Cragun For This Post:
Hi I have a bit of c code which I'm trying to use as a relay between apache and a scgi cluster.
Example of problem code is below:
while((n = recv(scgiSock, local_data, MAX_LENGTH, 0)) > 0)
{
time(&t2);
time_now = t2 - t1;
if(time_now > TIMEOUT)
... (2 Replies)
Hi
This will be useful who is looking for checking the files in a directory
#chmod 777 /cronacle/tools/teradata/opo/bin/file_check.sh
SUBJECT=`echo "File Not Found"`
SUBJECT1=`echo "File Found"`
#RECIPIENT=Madhu.Reddy@ge.com
cd /cronacle/tools/teradata/opo/bin
file_list=attach.sh
if
... (3 Replies)
How can I check if a file exists in shell script. Basically, I want to check if a file Test_msgs has been created today. If it has been then append data to it. Otherwise, create it. I have written the following but it does not work.
todaysdate=$(date +%d%m%Y)
timenow=$(date +%H%M%S)... (4 Replies)
Hi,
I'm new to UNIX, at least shell programming and am having trouble figuring out a problem i'm having. In one section in my nested if statement, i want the program to test if the file does not exist, based on an argument supplied at the command line by the user. What i have is
elif ; then... (3 Replies)
How can I check if a file exists in csh? I know there is "-e $file" but do not know exactly how to use it.
I have tried the below but I'm getting "Bad : modifier in $ ( )."
foreach f ($AfullnameLst)
if (-e $f) then
echo "$f: file exists"
endif
end (6 Replies)
Hi Everyone,
I am writing a shell script for the below needs and would like your suggestions and advices.
I have a lot of scripting files(Shell Scripts) under the directory:
/home/risk_dev/dev
I have another directory which has a lot of shell scripts under the directory:
... (2 Replies)
Hi
I my shell scripting(Main.ksh) i am calling the another loader.ksh using nohup inside the for loop ...so the above command runs parallel. Loader.ksh generate the dummy file seq_n.run file and deleted in the end of the Loader.ksh
In the main.ksh .. after the for loop .. i have to check... (1 Reply)
Hey, I am new to scripting and was wondering what is wrong with this if statement. I want to check if file exists and the if it does to unzip it. I program it as follows
if ; then
gunzip *_filename.gz
fi
Thanks in advance!
Please use code tags next time for your code and data. (10 Replies)
Hi All,
I am facing a problem while checking for existence of file over ssh !
Basically, i want to ssh and check if file exists.. If file exists return 1. If file does not exits return 0 (or any value)
I am using the below code
file_avail=`ssh username@host "if ]; then exit 1;... (10 Replies)