First the open-write-close thing is fine if it happens once in a while. If it is going on constantly it is a big performance drain. There are other options - check into aio:
To answer your question: it depends on two things: your hardware and how fragmented the file is.
If the file was very recently closed then the data may still be in the on-board cache in the disk controller or SAN box cache. In which case there is no appreciable performance difference.
If the file/disk is fragmented then you have another set of problems. The first write may require an extra head seek and then some rotational latency because it is likely the filesystem will have to add another separate physical sector (cluster of sectors) to the file. Or that the write will span disjoint sectors (depending on the filesystem and what you are writing)
It also depends on how much data you are writing. write() will defer direct I/O til later under a lof of circumstances, except a fflush() or sync(). close() does not necessarily flush the file to disk - see Marc Rochkind's 'Advanced Unix Programming' for more information on deferred write. Think of write as more of a promise than a fact in some circumstances.
Last edited by jim mcnamara; 12-22-2005 at 10:58 AM..
Hello ,
I have comma delimited file with over 20 fileds that i need to do some validations on. I have to check if certain fields are null and then write the line containing the null field into a new file and then delete the line from the current file.
Can someone tell me how i could go... (2 Replies)
Hi,
I have 1000 files names data1.txt through data1000.txt inside a folder. I want to write a script that will take each first line from the files and write them as output into a new file. How do I go about doing that? Thanks! (2 Replies)
Hi All,
We have a Unix program in oracle when we run the program this connects to specified ftp and will get the file into local server.
We are facing a problem like when file writing operations is not completed, this program is getting the incomplete file.
Could anyone please help me... (2 Replies)
Hi
I am trying to extract information out of a file but keep getting grep cant open errors
the code is below:
#bash
#extract orders with blank address details
#
# obtain the current date
# set today to the current date ccyymmdd format
today=`date +%c%m%d | cut -c24-31`
echo... (8 Replies)
I am looking to do a ls on a folder and have the output of the ls be structured so that is is modificaiton date, file name with the date in a format that is compatible with mysql. I am trying to build a table that stores the last modification date of certain files so I can display it on some web... (4 Replies)
Help needed...
Can you tell me how to compare the last two couple entries in a file and print their result in new file..:confused:
I have one file
Check1.txt
\abc1 12345
\abc2 12327
\abc1 12345
\abc2 12330
I want to compare the entries in Check1 and write to... (1 Reply)
Need to develop a unix shell script for the below requirement and I need your assistance:
1) search for file.log and file.bad file in a directory and read them
2) pull out "Load_Start_Time", "Data_File_Name", "Error_Type" from log file
4) concatinate each row from bad file as... (3 Replies)
Hello Gurus,
We are facing some performance issue in UNIX. If someone had faced such kind of issue in past please provide your suggestions on this .
Problem Definition:
/Few of load processes of our Finance Application are facing issue in UNIX when they uses a shell script having below... (19 Replies)
if test -z "$1"
then echo "you must give a filename or filepath"
else path=`dirname $1`
f_name =`basename $1`
if path="."
then path=`pwd`
fi
fi
cat $f_name $path >> index.txt
The only problem I am encountering with this is writing $path to index.txt
Keeps going gaga:
cat:... (1 Reply)
About 4 years ago I wrote this tool inspired by Rob Urban's collect tool for DEC's Tru64 Unix. What makes this tool as different as collect was in its day is its ability to run at a low overhead and collect tons of stuff. I've expanded the general concept and even include data not available in... (0 Replies)