11-13-2014
Quote:
Originally Posted by
shamrock
That is because the output stream is buffered...so you need to follow the open with a call to either setbuf or setvbuf and specify in their that the IO stream is unbuffered...
... or flush STDOUT after adding the text to the buffer and before the execl().
10 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
This is for 3 os's, AIX, Solaris, and AIX, didnt want to post three seperate times on the same subject, anyways, I want to force the user MQM to su, i.e. not be able to rlogin/telnet to the box as user MQM, only login as there ID(chris for example) and su to MQM, does anyone know how to do this,... (4 Replies)
Discussion started by: csaunders
4 Replies
2. Solaris
Is there a way in solaris 9 to prevent a user to login via ssh, telnet, rlogin, and only be able to su as that user, for example
have DBA joe blow login as jblow, and then su to oracle
BUT
not vice versa
have DBA joe blow login as oralce (6 Replies)
Discussion started by: csaunders
6 Replies
3. Shell Programming and Scripting
Hi All,
Is there any way to append a newline character at the end of a file(coma-separated file), through shell script?
I need to check whether newline character exists at the end of a file, if it does not then append it.
Regards,
Krishna (1 Reply)
Discussion started by: KrishnaSaran
1 Replies
4. Shell Programming and Scripting
Hi,
I have a .txt file which has a tilde(~) in it.
All that I want is to break into a newline whenever there is an occurence of '~'.
I have tried SED to do that but I could not succeed.
I would appreciate if I can get a shell script(ksh) for this problem real quick.
Thanks in advance.
... (5 Replies)
Discussion started by: ntekupal
5 Replies
5. IP Networking
Hi,
We have smb client running on two of the linux boxes and smb server on another linux system. During a backup operation which uses smb, read of a file was allowed while write to the same file was going on.Also simultaneous writes to the same file were allowed.Following are the settings in the... (1 Reply)
Discussion started by: swatidas11
1 Replies
6. UNIX for Dummies Questions & Answers
Hi,
i have a file where the end-of-file might be at the end of of a valid text line or on a new line
case a)
p q r
s t u <eof>
case b)
p q r
s t u
<eof>
case c)
p q r
s t u
<no data, only carriage return>
<eof>
I have a requirement where <eof> line should not be read if it's... (3 Replies)
Discussion started by: ysrini
3 Replies
7. Shell Programming and Scripting
Hi All,
I have file with only one record,always be only one record. as like below.
if that line contains newline end of the line..no need to add, if not just add the new line character.
END OF FILE. ROW COUNT: 7
Please help me..
Thanks, (9 Replies)
Discussion started by: bmk
9 Replies
8. Shell Programming and Scripting
My source file is pipe delimeted file with 53 fields.In 33 rd column i am getting mutlple new line characters,dule to that record is breaking into multiple records.
Note : here record delimter also \n
sample Source file with 6 fields :
1234|abc| \nabcd \n bvd \n cde \n |678|890|900\n
... (6 Replies)
Discussion started by: lakshmi001
6 Replies
9. Shell Programming and Scripting
I have requirement to remove the /n ( newline ) characters from the file.
When I open file in VI .. I want to see newline char
how to display newline char .. or where can I see the content with newline char visible? (3 Replies)
Discussion started by: freakabhi
3 Replies
10. Shell Programming and Scripting
Hello all,
I have maybe a simple Problem - but I do not know to handle it.
All what I want, is to write a line to file without a newline at the end. It works with "echo -n" for all lines, but not for the last one. At the end of the file is always a "0a" (hex)
My small script:
... (10 Replies)
Discussion started by: API
10 Replies
LEARN ABOUT ULTRIX
setvbuf
setbuf(3s) setbuf(3s)
Name
setbuf, setbuffer, setlinebuf, setvbuf - assign buffering to a stream
Syntax
#include <stdio.h>
void setbuf(stream, buf)
FILE *stream;
char *buf;
void setbuffer(stream, buf, size)
FILE *stream;
char *buf;
int size;
void setlinebuf(stream)
FILE *stream;
int setvbuf(stream, buf, type, size)
FILE *stream;
char *buf;
int type; size_t size;
Description
The three types of buffering available are unbuffered, block buffered, and line buffered. When an output stream is unbuffered, information
appears on the destination file or terminal as soon as written; when it is block buffered many characters are saved up and written as a
block; when it is line buffered characters are saved up until a new line is encountered or input is read from stdin. The routine may be
used to force the block out early. Normally all files are block buffered. For further information, see A buffer is obtained from upon the
first or on the file. If the standard stream stdout refers to a terminal it is line buffered. The standard stream stderr is always
unbuffered.
The routine is used after a stream has been opened but before it is read or written. The character array buf is used instead of an auto-
matically allocated buffer. If buf is the constant pointer NULL, input/output will be completely unbuffered. A manifest constant BUFSIZ
tells how big an array is needed:
char buf[BUFSIZ];
The routine, an alternate form of is used after a stream has been opened but before it is read or written. The character array buf whose
size is determined by the size argument is used instead of an automatically allocated buffer. If buf is the constant pointer NULL,
input/output will be completely unbuffered.
The routine is used to change stdout or stderr from block buffered or unbuffered to line buffered. Unlike and it can be used at any time
that the file descriptor is active.
The routine may be used after a stream has been opened but before it is read or written. Type determines how stream will be buffered.
Legal values for type, defined in stdio.h are:
_IOFBF causes input/output to be fully buffered.
_IOLBF causes output to be line buffered; the buffer will be flushed when a new line is written, the buffer is full, or input is
requested.
_IONBF causes input/output to be completely unbuffered.
If buf is not the NULL pointer, the array it points to will be used for buffering, instead of an automatically allocated buffer. The size
specifies the size of the buffer to be used. The constant BUFSIZ in <stdio.h> is suggested as a good buffer size. If input/output is
unbuffered, buf and size are ignored.
By default, output to a terminal is line buffered and all other input/output is fully buffered.
A file can be changed from unbuffered or line buffered to block buffered by using For further information, see A file can be changed from
block buffered or line buffered to unbuffered by using followed by with a buffer argument of NULL.
Restrictions
The standard error stream should be line buffered by default.
The and functions are not portable to non 4.2 BSD versions of UNIX.
See Also
malloc(3), fclose(3s), fopen(3s), fread(3s), getc(3s), printf(3s), putc(3s), puts(3s).
setbuf(3s)