05-23-2006
I have seen ls, wc etc give false readings if the file is opened by another program which is writing to it.
if the output is not flushed then file size etc remains the same.
try....
# cat flush.pl
#!/usr/local/bin/perl
open FH, ">flush.txt";
for (1..410) {
print FH "abcdefg89\n";
}
sleep 360;
close FH;
NOTE: The string is 10 chars (including \n), 410 lines written before sleep. therefore size should be 4100 bytes. The file is already open and not close yet on the sleep.
# tail flush.txt
abcdefg89
abcdefg89
abcdefg89
abcdefg89
abcdefg89
abcdefg89
abcdefg89
abcdefg89
abcdefg89
abcdefg89
abcdef
The block size of our system is 4096 so instead of 4100 bytes, 4096 is seen. The tail command will only show upto 4096 bytes.
# ls -l flush.txt
-rw-r--r-- 1 root system 4096 May 23 12:06 flush.txt
Ls confirms only 4096 bytes is seen
# wc -l flush.txt
409 flush.txt
wc -l shows only 409 and note 410.
The file will only show 4100 when you close the file.
# ls -l flush.txt
-rw-r--r-- 1 root system 4100 May 23 12:18 flush.txt
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
I need to write a script which analyses an invoice file, counting the amount of pages in the file to be printed per account number and per invoice. The account numbers are stored in another file which has instructions on what do with ach customers invoice as per their account number.
please... (6 Replies)
Discussion started by: la_burton
6 Replies
2. Shell Programming and Scripting
please give the difference between AIX shell scripting and Unix shell scripting. (2 Replies)
Discussion started by: haroonec
2 Replies
3. Shell Programming and Scripting
Hi All,
Greetings!!
I am trying to write a script that will get me the syslog.log file output of last week...
That is ...my cron will run on Monday and will get me the syslog output of previous week , last monday-last sunday.
I tried using date formatting and tail..but did not succeed.... (4 Replies)
Discussion started by: premamadhuri
4 Replies
4. UNIX for Advanced & Expert Users
Hi Friends,
1. Bash Shell Scrpt to take backup at evening
2. I need a bash shell script for killing all processes. (5 Replies)
Discussion started by: vinayraj
5 Replies
5. Shell Programming and Scripting
I 'm new to unix shell scripting can some one guide me to any e-book or link from where i can learn unix shell scripting .. i want to learn create interactive scripts for my day to day solaris work. Any help would be appreciated (1 Reply)
Discussion started by: fugitive
1 Replies
6. UNIX for Dummies Questions & Answers
Hello Experts,
I have the following questions to be discussed here at this esteemed discussion forum.
I have two Excel sheets which contain Unix Commands llike creating directory the structure/ftp/Copy/Zip etc to basically create an environment. I need help in understanding some of... (1 Reply)
Discussion started by: faizsaadq
1 Replies
7. UNIX for Dummies Questions & Answers
I'm sorry if this doesn't go here, but I'm in depserate need of help with my last unix homework.
Anyways, I'm taking summer classes, and one of them is UNIX. I've understood everything thus far, but I'm having a killer time with how my instructor has worded the problems for shell scripting. I... (3 Replies)
Discussion started by: dw15
3 Replies
8. Shell Programming and Scripting
I am new to Unix..
Can someone please help me to understand the concept of Login shell and non login shell ?
what exactly the difference between them :confused: (1 Reply)
Discussion started by: lokita jain
1 Replies
9. Programming
Hi All,
need help to complete the automation but stuck at a perticular situation
below is the code
<code>
fixed_function_name
{
code....
code....
variable_map=
{
a="/a"
b="/b"
c="/c"
so on...
} (7 Replies)
Discussion started by: yadavricky
7 Replies
10. UNIX for Beginners Questions & Answers
Describe in short the word completion feature of the tcsh
Completion works anywhere in the command line, not at just the end, for both commands and filenames. Type part of a word and hit the Tab key, and the shell replaces the incomplete word with the complete one in the input buffer. The... (1 Reply)
Discussion started by: Elena Lauren
1 Replies
LEARN ABOUT REDHAT
dos2unix
dos2unix(1) General Commands Manual dos2unix(1)
NAME
dos2unix - DOS/MAC to UNIX text file format converter
SYNOPSYS
dos2unix [options] [-c convmode] [-o file ...] [-n infile outfile ...]
Options:
[-hkqV] [--help] [--keepdate] [--quiet] [--version]
DESCRIPTION
This manual page documents dos2unix, the program that converts plain text files in DOS/MAC format to UNIX format.
OPTIONS
The following options are available:
-h --help
Print online help.
-k --keepdate
Keep the date stamp of output file same as input file.
-q --quiet
Quiet mode. Suppress all warning and messages.
-V --version
Prints version information.
-c --convmode convmode
Sets conversion mode. Simulates dos2unix under SunOS.
-o --oldfile file ...
Old file mode. Convert the file and write output to it. The program default to run in this mode. Wildcard names may be used.
-n --newfile infile outfile ...
New file mode. Convert the infile and write output to outfile. File names must be given in pairs and wildcard names should NOT be
used or you WILL lost your files.
EXAMPLES
Get input from stdin and write output to stdout.
dos2unix
Convert and replace a.txt. Convert and replace b.txt.
dos2unix a.txt b.txt
dos2unix -o a.txt b.txt
Convert and replace a.txt in ASCII conversion mode. Convert and replace b.txt in ISO conversion mode. Convert c.txt from Mac to Unix
ascii format.
dos2unix a.txt -c iso b.txt
dos2unix -c ascii a.txt -c iso b.txt
dos2unix -c mac a.txt b.txt
Convert and replace a.txt while keeping original date stamp.
dos2unix -k a.txt
dos2unix -k -o a.txt
Convert a.txt and write to e.txt.
dos2unix -n a.txt e.txt
Convert a.txt and write to e.txt, keep date stamp of e.txt same as a.txt.
dos2unix -k -n a.txt e.txt
Convert and replace a.txt. Convert b.txt and write to e.txt.
dos2unix a.txt -n b.txt e.txt
dos2unix -o a.txt -n b.txt e.txt
Convert c.txt and write to e.txt. Convert and replace a.txt. Convert and replace b.txt. Convert d.txt and write to f.txt.
dos2unix -n c.txt e.txt -o a.txt b.txt -n d.txt f.txt
DIAGNOSTICS
BUGS
The program does not work properly under MSDOS in stdio processing mode. If you know why is that so, please tell me.
AUTHORS
Benjamin Lin - <blin@socs.uts.edu.au>
Bernd Johannes Wuebben (mac2unix mode) <wuebben@kde.org>
MISCELLANY
Tested environment:
Linux 1.2.0 with GNU C 2.5.8
SunOS 4.1.3 with GNU C 2.6.3
MS-DOS 6.20 with Borland C++ 4.02
Suggestions and bug reports are welcome.
SEE ALSO
unix2dos(1) mac2unix(1)
1995.03.31 dos2unix v3.0 dos2unix(1)