02-16-2009
Your comment "all commands except the last are executed in a sub-shell" explains the behavior, which is what I though though was not sure. What exactly is the "last one", the tee command itself, the rightmost one I guess? In my context, the command which I run and pipe the output to using tee is a "shell function" defined within the script - not a script different from the one that calls it. Usually functions run in the same shell as the one in which the script calling them runs. Including pipe seems to make a difference ot the bahavior. Thanks anyway for your time and effort in responding.
10 More Discussions You Might Find Interesting
1. Cybersecurity
Some background on what I am trying to accomplish - Accreditation/Certification for DoD (Unix/Linux) system: I am trying to improve the process for capturing key system information in preparation for performing a formal security review of a Unix or Linux system. This is in addition to the SRR... (1 Reply)
Discussion started by: SecureMe
1 Replies
2. UNIX and Linux Applications
cat work.txt
M|324324|32424|3431
M|324324|32424|3431
N|324324|32426|3432
N|324324|32424|3434
M|324324|32424|3435
cat work.txt | tee $( grep '^M' > m.txt ) | $( grep '^N' > n.txt )
cehpny00:/home01/sr38632 $ cat m.txt
M|324324|32424|3431
M|324324|32424|3431
M|324324|32424|3435
... (2 Replies)
Discussion started by: rsampathy
2 Replies
3. Shell Programming and Scripting
hi friends,
The code:
i=1
while
do
filename=`/usr/bin/ls -l| awk '{ print $9}'`
echo $filename>>summary.csv
#Gives the name of the file stored at column 9
count=`wc -l $filename | awk '{print $1}'`
echo $count>>summary.csv
#Gives just the count of lines of file "filename"
i=`expr... (1 Reply)
Discussion started by: rajsharma
1 Replies
4. Shell Programming and Scripting
script1:
#!/bin/ksh
more test.txt
script2: calling the script1
#!/bin/ksh
/tmp/script1.sh 2>&1 | tee tee.log
where test.txt contains ~1200 lines.
When I execute the script2 the more command does not print pagewise it goes to the end of the line, when I remove the tee command it... (4 Replies)
Discussion started by: prasad111
4 Replies
5. UNIX for Advanced & Expert Users
Hi,
Want to log the output of command & check the exit status to find whether it succeeded or failed.
> ls abc
ls: abc: No such file or directory
> echo $?
1
> ls abc 2>&1 | tee log
ls: abc: No such file or directory
> echo $?
0
Tee commands changes my exit status to be always... (7 Replies)
Discussion started by: vibhor_agarwali
7 Replies
6. Shell Programming and Scripting
hi guys, is there any way to capture the ip address of users who log-in to linux then capture the command executed together with the time and date?
example output
192.1.1.1 : ls -ltr Aug 6 16:38:40thanks in advance. (2 Replies)
Discussion started by: d3xt3r
2 Replies
7. UNIX for Dummies Questions & Answers
Hi,
I'm sure this is real simple but in the looking I've done I haven't seen it addressed (or didn't realize it). I've started up a PuTTY connection to our UNIX box and started screen and script - no problems. Then I typed "tee teeKH18.txt" expecting it to start tee and dump all activity into... (2 Replies)
Discussion started by: Mike Welch
2 Replies
8. Shell Programming and Scripting
In the current directory , I have seven files .
But when I use the following command , it lists eight files ( 7 files + file_list.xtx)
ls -1 | tee file_list.xtx | while read line; do echo $line ; done
Does the tee command create the file_list.xtx file first and then executes the ls -1... (1 Reply)
Discussion started by: kumarjt
1 Replies
9. Shell Programming and Scripting
I have the following script as shown below where I cat a file and then also tee the output to a file as I have to email the execution of the process to users at the end of the script:
cat incoming.dat | tee -a execution.log
if
then
echo "Issue with incoming.dat file, file not... (5 Replies)
Discussion started by: calredd
5 Replies
10. Shell Programming and Scripting
Hello Experts,
Greeting to all of you.
I have a requirement, that we have a shell script status.sh
that check the status of server and server status shows as status.sh
Enterprise Server - Running
Admin Server - Shutdown
Requirement is like whenever the output shows shutdown it should... (2 Replies)
Discussion started by: aks_1902
2 Replies
LEARN ABOUT OPENSOLARIS
tee
tee(1) User Commands tee(1)
NAME
tee - replicate the standard output
SYNOPSIS
/usr/bin/tee
/usr/bin/tee [-ai] [file]...
ksh93
tee [-ail] [file]...
DESCRIPTION
/usr/bin/tee
/usr/bin/tee copies standard input to standard output, making a copy in zero or more files. tee does not buffer its output. The options
determine if the specified files are overwritten or appended to.
ksh93
The tee built-in in ksh93 is associated with the /bin and /usr/bin paths. It is invoked when tee is executed without a pathname prefix and
the pathname search finds a /bin/tee or /usr/bin/tee executable.
tee copies standard input to standard output and to zero or more files. The options determine whether the specified files are overwritten
or appended to. The tee utility does not buffer output. If a write to a file fails, tee continues to write to other files although it exits
with a non-zero exit status.
The number of file operands that can be specified is limited by the underlying operating system.
OPTIONS
/usr/bin/tee
The following options are supported by /usr/bin/tee:
-a Appends the output to the files rather than overwriting them.
-i Ignores interrupts.
ksh93
The following options are supported by the tee built-in command in ksh93:
-a Appends the output to the files rather than overwriting them.
--append
-i Ignores SIGINT signal.
--ignore-interrupts
-l Sets the standard output to be line buffered.
--line-buffer
OPERANDS
The following operands are supported:
file A path name of an output file. Processing of at least 13 file operands are supported.
USAGE
See largefile(5) for the description of the behavior of tee when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes).
ENVIRONMENT VARIABLES
See environ(5) for descriptions of the following environment variables that affect the execution of tee: LANG, LC_ALL, LC_CTYPE, LC_MES-
SAGES, and NLSPATH.
EXIT STATUS
/usr/bin/tee
The following exit values are returned by /usr/bin/tee:
0 The standard input was successfully copied to all output files.
>0 The number of files that could not be opened or whose status could not be obtained.
ksh93
The following exit values are returned by tee in ksh93:
0 Successful completion.
>0 An error occurred.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
/usr/bin/tee
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWcsu |
+-----------------------------+-----------------------------+
|CSI |Enabled |
+-----------------------------+-----------------------------+
|Interface Stability |Committed |
+-----------------------------+-----------------------------+
|Standard |See standards(5). |
+-----------------------------+-----------------------------+
ksh93
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWcsu |
+-----------------------------+-----------------------------+
|Interface Stability |See below. |
+-----------------------------+-----------------------------+
The ksh93 built-in binding to /bin and /usr/bin is Volatile. The built-in interfaces are Uncommitted.
SEE ALSO
cat(1), ksh93(1), attributes(5), environ(5), largefile(5), standards(5)
SunOS 5.11 20 Nov 2007 tee(1)