11-06-2010
Reading Standard Input
Hello,
I am new to scripting.
How do I read multiple lines from the command line?
I know read reads one line, but if I have to read multiple lines, how should I do?
Thanks,
Prasanna
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
how can i redirect standard input? i dont remember :/, though could you redirec not from a command? i mean, to redirect always stdin and stout (1 Reply)
Discussion started by: Jariya
1 Replies
2. Shell Programming and Scripting
I tried copy the output files from find command into a directory.
Example,
find / -name core 2>/dev/null | xargs cp????
I have known that we can use xargs to execute command lines from standard input but how to use it in this case.
Or I can do something besides xargs. (2 Replies)
Discussion started by: lalelle
2 Replies
3. Shell Programming and Scripting
Dear...
I have a scrpit that contains multiple read command.... when I run the script I have to enter 3 variables so that I can get the output..
but, I dont want to put those 3 inputs manually every time... I want to make a shell that reads the 3 inputs from a file.
the script name is... (4 Replies)
Discussion started by: yahyaaa
4 Replies
4. Shell Programming and Scripting
Hi guys,
I am new to AWK and unix scripting. Please see below my problem and let me know if anyone you can help.
I have 2 input files (example given below)
Input file 2 is a standard file (it will not change) and we have to get the name (second column after comma) from it and append it... (5 Replies)
Discussion started by: sksahu
5 Replies
5. Solaris
Please give me any example for standard input in Solaris. (6 Replies)
Discussion started by: karman0931
6 Replies
6. Shell Programming and Scripting
Hello,
Could somebody please give me an awk example on how to read from the standard input.
It means as the "read" function in Korn shell.
Thx in advance ... (3 Replies)
Discussion started by: rany1
3 Replies
7. UNIX for Dummies Questions & Answers
Is it possible to read from the screen or standard output? If so, may I know how I can do this?
For example, I have an application running which prints out the following on the screen:
Starting tools from .image-tools...
imagecontrol_1: SECS/GEM-capable version is running
done
cindy@pgunix... (2 Replies)
Discussion started by: sippingsoda
2 Replies
8. Shell Programming and Scripting
So, I am new to shell scripting and have a few problems.
I know how to read from standard input but I do not know how to really compare it to say, a character. I am trying to compare it to a character and anything exceeding just a character, the user will get an output message, but the program... (7 Replies)
Discussion started by: Bungkai
7 Replies
9. Shell Programming and Scripting
I have a program that requires the user to enter input values while it is being run
for example in bash
...
...
..
echo "Enter your input"
read input
echo $input
...
...
...I need to schedule this program with crontab, hence a problem, cronjobs run in the background, any ideas on how to... (10 Replies)
Discussion started by: walforum
10 Replies
10. Homework & Coursework Questions
Just started learning Unix and received my first assignment recently. We haven't learned many commands and honestly, I'm stumped. I'd like to receive assistance/guidance/hints.
1. The problem statement, all variables and given/known data:
How do I write a shell script that takes in a file or... (4 Replies)
Discussion started by: fozilla
4 Replies
read(3tcl) Tcl Built-In Commands read(3tcl)
__________________________________________________________________________________________________________________________________________________
NAME
read - Read from a channel
SYNOPSIS
read ?-nonewline? channelId
read channelId numChars
_________________________________________________________________
DESCRIPTION
In the first form, the read command reads all of the data from channelId up to the end of the file. If the -nonewline switch is specified
then the last character of the file is discarded if it is a newline. In the second form, the extra argument specifies how many characters
to read. Exactly that many characters will be read and returned, unless there are fewer than numChars left in the file; in this case all
the remaining characters are returned. If the channel is configured to use a multi-byte encoding, then the number of characters read may
not be the same as the number of bytes read.
ChannelId must be an identifier for an open channel such as the Tcl standard input channel (stdin), the return value from an invocation of
open or socket, or the result of a channel creation command provided by a Tcl extension. The channel must have been opened for input.
If channelId is in nonblocking mode, the command may not read as many characters as requested: once all available input has been read, the
command will return the data that is available rather than blocking for more input. If the channel is configured to use a multi-byte
encoding, then there may actually be some bytes remaining in the internal buffers that do not form a complete character. These bytes will
not be returned until a complete character is available or end-of-file is reached. The -nonewline switch is ignored if the command returns
before reaching the end of the file.
Read translates end-of-line sequences in the input into newline characters according to the -translation option for the channel. See the
fconfigure manual entry for a discussion on ways in which fconfigure will alter input.
USE WITH SERIAL PORTS
For most applications a channel connected to a serial port should be configured to be nonblocking: fconfigure channelId -blocking 0. Then
read behaves much like described above. Care must be taken when using read on blocking serial ports:
read channelId numChars
In this form read blocks until numChars have been received from the serial port.
read channelId
In this form read blocks until the reception of the end-of-file character, see fconfigure -eofchar. If there no end-of-file charac-
ter has been configured for the channel, then read will block forever.
EXAMPLE
This example code reads a file all at once, and splits it into a list, with each line in the file corresponding to an element in the list:
set fl [open /proc/meminfo]
set data [read $fl]
close $fl
set lines [split $data
]
SEE ALSO
file(3tcl), eof(3tcl), fblocked(3tcl), fconfigure(3tcl), Tcl_StandardChannels(3tcl)
KEYWORDS
blocking, channel, end of line, end of file, nonblocking, read, translation, encoding
Tcl 8.1 read(3tcl)