Sorry, I wasn't clear. My issue is more to do with using the "tee" command which is causing the error checking (in the next if statement) to always pass regardless of the actual command whether it runs successfully or fails.
I understood your dilemma. That's why I gave that snippet. It is not only tee but for any chained commands: $? will report about the last command executed.
I'm not a complete novice at unix but I'm not all that advanced either. I'm hoping that someone with a little more knowledge than myself has the answer I'm looking for.
I'm writing a wrapper script that will be passed user commands from the cron...
Ex:
./mywrapper.sh "/usr/bin/ps -ef |... (1 Reply)
Hello
If anybody knows something about the following please help me.
I am using HP unix.
In a script called test.txt i have the following command
echo ok | tee test1.txt
It works fine.It prints ok on the screen and creates the file test1.txt and puts in the file the "ok".
In the same... (2 Replies)
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)
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)
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)
for i in /tmp/*filex*; do echo $i |sed 's/\/tmp/infofiles\/infosize\/db\/files\///g';done 2>&1 |tee>output
|
The script works fine, but I cannot get the output to go to the screen and output at same time. I've tried tee -a tee and a number of commands but the only way I can get it working is... (3 Replies)
Hello All,
I have a requirement to redirect stdout and stderr to 'log' file and stderr alone to 'err' file.
Can someone please help me with this?
Thanks in advance (2 Replies)
OS version: RHEL 7.4
Shell : bash
I would like to capture command outputs using tee like # yum upgrade | tee yumupgradeLog
But, if I use tee command, I cannot respond to prompts like Is this ok : during command execution as shown below.
Is there a way I could use tee and still be able to... (4 Replies)
Discussion started by: kraljic
4 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)