Visit Our UNIX and Linux User Community


tee command within variable


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers tee command within variable
# 1  
Old 08-13-2010
Bug tee command within variable

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 script i want to do the following.Instead of the command
echo ok | tee test1.txt
, i want to use :

myvariable=| tee test1.txt
echo ok $myvariable


But the above does not work correct.It prints ok on the screen and creates the file test1.txt .But the file test1.txt is emtpy(zero bytes).

I have tried the following commands but none worked for me.
myvariable
#1
myvariable='| tee test1.txt'
echo ok $
myvariable

#2
myvariable=| tee test1.txt
echo "ok $
myvariable"

#3
myvariable='| tee test1.txt'
echo "ok $
myvariable"

#4
myvariable=| tee test1.txt
echo "ok ${
myvariable}"

#5
myvariable='| tee test1.txt'
echo "ok ${
myvariable}"

#6
myvariable="| tee test1.txt"
echo "ok ${
myvariable}"

#7
myvariable=| tee test1.txt
eval echo ok \${$
myvariable}

#8
myvariable="| tee test1.txt"
eval echo ok \${$
myvariable}

Thank you for your time.




# 2  
Old 08-13-2010
Variables are not evaluated that way after strings have already been parsed, as you've discovered, but, you can force the shell to re-evaluate it whenever you want with the eval builtin.

Code:
STR="echo A | cat"
eval "$STR"

# 3  
Old 08-13-2010
Thank you very much for your quick reply Corona688, and thank you very much for
helping me solve my problem.
 

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Help required with Stderr and tee command

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)
Discussion started by: vikas_trl
2 Replies

2. Shell Programming and Scripting

Question about tee command

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

3. UNIX for Dummies Questions & Answers

Problems with tee command.

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)
Discussion started by: newbie2010
3 Replies

4. Shell Programming and Scripting

Help with tee command

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

5. UNIX for Advanced & Expert Users

Equivalents of tee command to find exit status of command

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

tee + more command

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

7. HP-UX

HP Unix Tee command.

work.txt M|324324|32424|3431 N|324324|32426|3432 N|324324|32424|3434 M|324324|32424|3435 AIX command: cat work.txt | tee >( grep '^M' > m.txt ) >( grep '^N' > n.txt ) which does not work on HP? Please adivse us. Error: cat work.txt | tee >( grep '^M' > m.txt ) >( grep '^N' > n.txt )... (7 Replies)
Discussion started by: rsampathy
7 Replies

8. UNIX and Linux Applications

Tee with pipe command.

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

9. Shell Programming and Scripting

Trouble with tee command to capture script outputs

function GetInput { print -n "Input" read input export INPUT=$input } export COMMAND="GetInput" $COMMAND echo "$INPUT" $COMMAND | tee -a Log.log echo "$INPUT" The first one without "tee" works fine. echo "$INPUT" displays the values I type in for input. The second... (5 Replies)
Discussion started by: muthubharadwaj
5 Replies

10. Shell Programming and Scripting

command does not return exit status due to tee

Hi, I am using /bin/sh. I want to display the stdout and stderr on the terminal as well as save it in a file, so I'm using this command. gmake all 2>&1 | tee log But even if gmake fails, it's always giving 0 as exit status, i suppose because of tee. # false 2>&1 | tee Log # echo $? 0... (2 Replies)
Discussion started by: anand_bh
2 Replies

Featured Tech Videos