When does the underlying ksh process open and close files? Every time they're accessed, or as little as possible?
Say you have some script like:
Assuming the files aren't explicitly opened or closed, will the shell do 2*open(2) (and 2*close(2) later on exit), or 4*open(2) and 4*close(2)?
Hi Im writing a small script right now which reads all of the files in a directory and displays there name. However I dont want to use the ls command. Is there any way of reading the names of the files and printing them to the screen? (2 Replies)
Hi all,
I have a problem in handling files through C.
here is the problem im having:
i will query the database (for instance consider employees table )
for empno,ename,job,salary fields.The query returns me some 100 of rows. now i need to place them in a file in row wise pattern as they... (3 Replies)
Hi,
I have a log file which runs into 3 to 5 GB.
We store this typically for 6 months. When a new month starts we move the previous month into a 9 month back up log (file.9m) and delete the last month of the 9 month back up.
Iam using awk to find the data and cat to join the files like... (3 Replies)
Hi there,
I have a wapper script which passes the argument from command prompt to inner script.. It works fine as long as the argument containing single word. But when value contains multiple word with space, not working as expected. I tried my best, couldn't find the reason. Gurus, pls.... (2 Replies)
Hi
I am new to this Scripting process and would like to know How can i write a ksh script that will call other ksh scripts and write the output to a file and/or email.
For example
-------
Script ABC
-------
a.ksh
b.ksh
c.ksh
I need to call all three scripts execute them and... (2 Replies)
my input for a script is another csv file
but in that file say 7 lines are there ...
how can i get line by line to that input
for example :
>cat link.csv
www.yahoo.com,yahoo
www.google.com,google
www.unix.com,unix
another file
in that file i need to ping the above links
... (2 Replies)
Hi Team,
I am trying to cut a large file into multiple files. It has
Header
50,050 records
Trailer
-------------------------------------------
I need to cut the files into multiple files of 1000 records and should have the same header and trailer as the original files.
... (4 Replies)
I have a file
1
298167
298168
1093209
1093210
1422663
I want to write a code where in I want to read contents of above file
like first read is 1
second read is 298167
Substract second read from first and if this is greater than or less than 99,999.
Similarly I want to traverse thru... (3 Replies)
Hi All,
I need to extract the data from the text file. The data of the text file is shown below
#L 0.000017 4.329939 0.000017 4.716267 r7.9 P 1 1;Net=IN32
The extracted data should be IN32. Could anyone help to script in c shell.? (4 Replies)
Discussion started by: gopishrine
4 Replies
LEARN ABOUT SUSE
close
close(n) Tcl Built-In Commands close(n)
__________________________________________________________________________________________________________________________________________________NAME
close - Close an open channel
SYNOPSIS
close channelId
_________________________________________________________________DESCRIPTION
Closes the channel given by channelId.
ChannelId must be an identifier for an open channel such as a Tcl standard channel (stdin, stdout, or stderr), the return value from an
invocation of open or socket, or the result of a channel creation command provided by a Tcl extension.
All buffered output is flushed to the channel's output device, any buffered input is discarded, the underlying file or device is closed,
and channelId becomes unavailable for use.
If the channel is blocking, the command does not return until all output is flushed. If the channel is nonblocking and there is unflushed
output, the channel remains open and the command returns immediately; output will be flushed in the background and the channel will be
closed when all the flushing is complete.
If channelId is a blocking channel for a command pipeline then close waits for the child processes to complete.
If the channel is shared between interpreters, then close makes channelId unavailable in the invoking interpreter but has no other effect
until all of the sharing interpreters have closed the channel. When the last interpreter in which the channel is registered invokes close,
the cleanup actions described above occur. See the interp command for a description of channel sharing.
Channels are automatically closed when an interpreter is destroyed and when the process exits. Channels are switched to blocking mode, to
ensure that all output is correctly flushed before the process exits.
The command returns an empty string, and may generate an error if an error occurs while flushing output. If a command in a command pipe-
line created with open returns an error, close generates an error (similar to the exec command.)
EXAMPLE
This illustrates how you can use Tcl to ensure that files get closed even when errors happen by combining catch, close and return:
proc withOpenFile {filename channelVar script} {
upvar 1 $channelVar chan
set chan [open $filename]
catch {
uplevel 1 $script
} result options
close $chan
return -options $options $result
}
SEE ALSO
file(n), open(n), socket(n), eof(n), Tcl_StandardChannels(3)KEYWORDS
blocking, channel, close, nonblocking
Tcl 7.5 close(n)