Sponsored Content
Full Discussion: redirect STDIN
Top Forums Shell Programming and Scripting redirect STDIN Post 302101669 by iamcollins on Wednesday 3rd of January 2007 07:15:14 PM
Old 01-03-2007
Hi

I am not clear with your exact requirement. If i am not mistaken, by default your input is going to be from STDIN.

One point to say here. Inside a shell script if there is any redirection of the standard input to a file, then subshells, functions and everything else also inherit the changed file descriptor. After that statement, your read will not get input from STDIN. In that case, you could use a read as mentioned below:

read newinput < /dev/tty

If think this is what you are asking for. If not, please provide the script you faced the problem, which would help to analyze and provide better solution saving time.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

stdin not tty when try to pine or redirect

My supervisor keep getting "stdin not tty" or something like that when he pipe or redirect input into a program. Others don't seem to get this message. Is there some way I can help him to fix or turn this off? Thx in advance (1 Reply)
Discussion started by: Micz
1 Replies

2. Programming

How to write to stdin of another program (program A -> [stdin]program B)

Hi, Program A: uses pipe() I am able to read the stdout of PROGAM B (stdout got through system() command) into PROGRAM A using: * child -> dup2(fd, STDOUT_FILENO); -> execl("/path/PROGRAM B", "PROGRAM B", NULL); * parent -> char line; -> read(fd, line, 100); Question: ---------... (1 Reply)
Discussion started by: vvaidyan
1 Replies

3. UNIX for Dummies Questions & Answers

How to write to stdin of another program (program A -> [stdin]program B)

Hi, Program A: uses pipe() I am able to read the stdout of PROGAM B (stdout got through system() command) into PROGRAM A using: * child -> dup2(fd, STDOUT_FILENO); -> execl("/path/PROGRAM B", "PROGRAM B", NULL); * parent -> char line; -> read(fd, line, 100); Question: ---------... (3 Replies)
Discussion started by: vvaidyan
3 Replies

4. Programming

Redirect stdin and out to sockets

For windows was pretty simple to redirect the std in a and out of a child process for "cmd.exe " command prompt terminal to a socket using connected pipes passed to a new process in the STARTUPINFO structure. BOOL b = ::CreatePipe((LPHANDLE)h_stdInRead,(LPHANDLE)hsdtInWriteTmp, &SecAttrib,... (1 Reply)
Discussion started by: gyula
1 Replies

5. Shell Programming and Scripting

inline redirect stdin

Hi: I have the next script on ksh #!/usr/bin/ksh cd $FUENTES qdesign <<-! \$/opt/cognos/ph843e/bin/qtp <<-! \$/opt/cognos/ph843e/bin/quiz <<-! ! ! ! This script is very simple, i want to nest three process quiz into qtp, and this into qdesign. When I run it , i receive the... (5 Replies)
Discussion started by: ct2marer
5 Replies

6. UNIX for Advanced & Expert Users

inline redirect stdin

Hi: I have the next script on ksh #!/usr/bin/ksh cd $FUENTES qdesign <<-! \$/opt/cognos/ph843e/bin/qtp <<-! \$/opt/cognos/ph843e/bin/quiz <<-! ! ! ! This script is very simple, i want to nest three process quiz into qtp, and this into qdesign. When I run it , i receive the next... (2 Replies)
Discussion started by: ct2marer
2 Replies

7. Shell Programming and Scripting

Cannot redirect to STDIN in a shell script

I am unable to use STDIn redirection with < (commands) When I do the following, both approaches work and give the same results: 1. $ printf "aaa\nbbb\n" > file1 $ printf "111\n222\n" > file2 $ cat file1 file2 aaa bbb 111 2222. $ cat <(printf "aaa\nbbb\n") <(printf "111\n222\n") aaa... (8 Replies)
Discussion started by: metaltree
8 Replies

8. UNIX for Dummies Questions & Answers

Redirect stdin stdout to multiple files

Hi, i know how to a) redirect stdout and stderr to one file, b) and write to two files concurrently with same output using tee command Now, i want to do both the above together. I have a script and it should write both stdout and stderr in one file and also write the same content to... (8 Replies)
Discussion started by: ysrini
8 Replies

9. Shell Programming and Scripting

Redirect String to STDIN

Looking for the proper way to bring a string into the stdin. I have a string that I would like to grep and awk. Each have to be run separately, not piped together. So far, the only way I could figure out how is to echo the string and pipe it: echo 'This is my string' | grep my (3 Replies)
Discussion started by: Panman82
3 Replies

10. Shell Programming and Scripting

Redirect string from bash stderr to user stdin

Hi there, I need to execute a command in the bash. The program prints some standard (output and) error and then wants the user to choose one of several options and type the according input. I am trying to solve this issue in a bash script but also running into some circular dependency. How can I... (7 Replies)
Discussion started by: fredestet
7 Replies
tty(1)							      General Commands Manual							    tty(1)

NAME
tty - Returns pathname of terminal device SYNOPSIS
tty [-s] The tty command writes the full pathname of your terminal device to standard output. The tty command may also be used to determine if standard input is a terminal. STANDARDS
Interfaces documented on this reference page conform to industry standards as follows: tty: XCU5.0 Refer to the standards(5) reference page for more information about industry standards and associated tags. OPTIONS
Suppresses reporting the pathname. The XCU specification states that -s option is obsolete and recommends the portable applications use test -t 0 instead of tty -s. OPERANDS
None DESCRIPTION
The command tty -s evaluates as TRUE if standard input is a display and FALSE if it is not. [Tru64 UNIX] The file /dev/tty is a special file always refers to your controlling terminal, although it also may have another name like /dev/console or /dev/tty2. To avoid writing undesirable output to an output file--for example, to write a prompt in a shell script to the screen, while writing the response to the prompt to an output file--redirect standard output to /dev/tty. NOTES
While the -s option is useful if only the exit code is wanted, it does not rely on any ability to form a valid pathname. For a portable application you should use the command test -t 0. EXIT STATUS
The following exit values are returned: Successful completion. Standard input is not a display. [Tru64 UNIX] Invalid options specified. [Tru64 UNIX] An error occurred. DIAGNOSTICS
[Tru64 UNIX] Your standard input is not a display and you did not specify the -s option. EXAMPLES
To display full pathname of your terminal device, enter: tty To test whether or not the standard input is a terminal device, create a shell script containing the following: if tty -s then echo 'Output is a display' else echo 'Output is not a display' fi If the standard input is a terminal device, this displays the Output is a display message. If the standard input is not a terminal device, it displays the Output is not a display message. ENVIRONMENT VARIABLES
The following environment variables affect the execution of tty: Provides a default value for the internationalization variables that are unset or null. If LANG is unset or null, the corresponding value from the default locale is used. If any of the internationalization vari- ables contain an invalid setting, the utility behaves as if none of the variables had been defined. If set to a non-empty string value, overrides the values of all the other internationalization variables. Determines the locale for the interpretation of sequences of bytes of text data as characters (for example, single-byte as opposed to multibyte characters in arguments). Determines the locale for the for- mat and contents of diagnostic messages written to standard error. Determines the location of message catalogues for the processing of LC_MESSAGES. FILES
Pseudodevice representing the user's controlling terminal. SEE ALSO
Commands: stty(1), test(1) Routines: ttyname(3) Files: tty(7) Standards: standards(5) tty(1)
All times are GMT -4. The time now is 02:53 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy