redirect stdout echo command in condition A run in condition B


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting redirect stdout echo command in condition A run in condition B
# 1  
Old 11-02-2011
redirect stdout echo command in condition A run in condition B

hi,

I have some problems in my simple script about the redirect echo stdout command inside a condition. Why is the echo command inside the elif still execute in the else command

Here are my simple script
Quote:
#!/bin/bash

filename=`zenity --entry --text "Output Filename"`
location=`pwd`
pwd1="/mnt/Data/Ebooks-Video_Tutorials"
date=`date +%Y-%m-%d`

if [ -z $filename ];then
exit 1
elif [ -d $location -a -d $pwd1 ];then
echo "######### $location root directory ######### " > "$filename"\ Full\ Path-$date.txt
find "$location" -type f | sed 's/\/mnt\/Data\/Ebooks-Video_Tutorials\///g' | sort | grep -v "$filename" >> "$filename"\ Full\ Path-$date.txt
else
find "$location" | sort | grep -v "$filename" > "$filename"\ Full\ Path-$date.txt
fi
After check on the two diff output the echo stdout redirect is present in two diff outputs.

Thanks for any input..
# 2  
Old 11-02-2011
If it's present in both outputs, then it's taking the first branch in both outputs.
# 3  
Old 11-02-2011
Quote:
Originally Posted by Corona688
If it's present in both outputs, then it's taking the first branch in both outputs.

Can you explain it for me..If you dont mine..
# 4  
Old 11-02-2011
It is executing this code block both times:

Code:
elif [ -d $location -a -d $pwd1 ];then
echo "######### $location root directory ######### " > "$filename"\ Full\ Path-$date.txt
find "$location" -type f | sed 's/\/mnt\/Data\/Ebooks-Video_Tutorials\///g' | sort | grep -v "$filename" >> "$filename"\ Full\ Path-$date.txt
else

Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

If condition return 0 even when it fails to satisfy te condition

HI My doubt may be basic one but I need to get it clarified.. When i use "if" condition that checks for many AND, OR logical conditions like if ]; then return 0 fi Even the if condition fails it returns as zero.. Any clue.. But if i add else condition like if ]; ... (2 Replies)
Discussion started by: Priya Amaresh
2 Replies

2. Shell Programming and Scripting

Echo not displaying variable in If-Else condition

if then echo "Entry Valid : ${x_oug}" else echo "Entry Invalid : " 0 fi In the above code the 3rd line is not working... it does not print anything I tried following as well .. but no luck! echo "Entry Valid : ... (13 Replies)
Discussion started by: Chetanz
13 Replies

3. Shell Programming and Scripting

How do I use paste command in while condition??

there are lot of files where in mostly all the file contains 2columnsAl,1 Ail,13 Al,3 Al,1 Al,3 Al,2 Al,3 Al,1 Al,1 Al,1 My requirement is i wanted only the second column of every file as a column ony in the base file... I used paste command... but it is not helping as I'm using while... (7 Replies)
Discussion started by: nikhil jain
7 Replies

4. UNIX for Dummies Questions & Answers

Diff command with a condition

Hi I have 2 files test1 & test2. Test1 contains : BSC AFCN Test2 contains: AFCN I than use the following command : diff file1 file2 which displays than displays : 2d1 < BSC Basically I want to confirm that except for "BSC", AFCN is the only word in each file.So when I do a... (6 Replies)
Discussion started by: Prega
6 Replies

5. HP-UX

Difference between [condition] and [[condition]] and ((condition)) when used with if condition

Executed the following if conditions .. and got different results . only (( )) gave correct o/p with all scenarios . Can anybody please let me know what is the difference between and ] and ((condition)) when used with if condition. And why each condition gave different result. 1.... (2 Replies)
Discussion started by: soumyabubun
2 Replies

6. Shell Programming and Scripting

multiple echo statements in if condition

Hi , I have a peculiar problem. i have an if block like this if ; then echo " todays date is " ${date} >> log_file echo " file count is " $ count >> log_file mv filename1 filename 2 else echo "no files available ">> log_file fi the echo statement "no files available " is not... (2 Replies)
Discussion started by: wizardofoz
2 Replies

7. Shell Programming and Scripting

grep command with AND condition

I want to do a grep with AND condition. I have three files. file1.txt ======== UNIX ...... WINDOWS ........ ORACLE file2.txt ======== UNIX ....... WINDOWS ...and many such files in a directory (6 Replies)
Discussion started by: prasperl
6 Replies

8. UNIX for Advanced & Expert Users

STDOUT redirect to a FILE, when fuser command is used !!

Hi all, I have the following script: ------------------------------------------------- #SCRIPT TO CHECK WHO HAS ACCESSED THE LOG/FILE IN PAST 'N' MINUTES, AND MAIL ACCORDINGLY. MYPATH="/clocal/mqbrkrs/user/mqsiadm/sanjay/" MAIL_RECIPIENTS="vg517@dcx.com" Subject="File accessed in last... (6 Replies)
Discussion started by: varungupta
6 Replies

9. UNIX for Dummies Questions & Answers

redirect stderr and/or stdout to /dev/null from command line

Is it possible to redirect errors at the command line when you run the script such as bash scriptname & 2>/dev/null? (1 Reply)
Discussion started by: knc9233
1 Replies
Login or Register to Ask a Question