Visit Our UNIX and Linux User Community


While loop for comparison


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting While loop for comparison
# 1  
Old 05-11-2013
While loop for comparison

hi all,
i have two files:
test1 contains : one two three four five (on separate lines)
test2 contains: one ten nine (on separate lines)

I want to compare two files, test1 against test2. if any word from test1 does not match test2 display it. can someone help me with a while loop on this.

thanks

Last edited by sbk785; 05-11-2013 at 11:57 PM.. Reason: formatting
# 2  
Old 05-12-2013
This is not the appropriate forum for homework assignments.

Why would you insist on a while loop to perform comparisons? A very simple awk script would be easier (and more efficient than many common while loops that would perform this task).
# 3  
Old 05-12-2013
thanks for your reply but for some reason my while read command doesnt seem to work ... not sure where i am getting it wrong
# 4  
Old 05-12-2013
Is this a homework assignment?

What have you tried so far?
# 5  
Old 05-13-2013
hi Don

here it is:

Code:
while read -r line
do
for i in $(cat test2)
do
if [ $line != $i ];
then
echo " The different value us $line"
fi
done
done < test1

i do not get the correct output. As per the my expectation i shud be getting all line from test1 except for the word "one". can you please help me correct the code. I am trying to extract lines from test1 that do not match lines in test2.

thanks in advacne

Previous Thread | Next Thread
Test Your Knowledge in Computers #93
Difficulty: Easy
The mkdir command will create a new directory even if the user does not have the required permissions to write to the parent directory of the new directory.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

awk - 2 files comparison without for loop - multi-line issue

Greetings Experts, I need to handle the views created over monthly retention tables for which every new table in YYYYMMDD format, there is equivalent view created and the older table which might be dropped, the view over it has to be re-created over a dummy table so that it doesn't fail.... (2 Replies)
Discussion started by: chill3chee
2 Replies

2. Shell Programming and Scripting

awk loop using array:wish to store array values from loop for use outside loop

Here's my code: awk -F '' 'NR==FNR { if (/time/ && $5>10) A=$2" "$3":"$4":"($5-01) else if (/time/ && $5<01) A=$2" "$3":"$4-01":"(59-$5) else if (/time/ && $5<=10) A=$2" "$3":"$4":0"($5-01) else if (/close/) { B=0 n1=n2; ... (2 Replies)
Discussion started by: klane
2 Replies

3. Shell Programming and Scripting

Comparison of two variables with IF loop

Hello, My script is like : #!/bin/sh -x TODAY=$(echo `date +"%b%d"`) FILE_DATE=$(ls -l test.sh | awk '{print $6$7}') echo "file date=$FILE_DATE" echo "date=$TODAY" if ];then echo "file is correct" else echo "file is incorrect" fi and The Output is : $ ./test.sh + + date +%b%d +... (3 Replies)
Discussion started by: saurau
3 Replies

4. Shell Programming and Scripting

Array Variable being Assigned Values in Loop, But Gone when Loop Completes???

Hello All, Maybe I'm Missing something here but I have NOOO idea what the heck is going on with this....? I have a Variable that contains a PATTERN of what I'm considering "Illegal Characters". So what I'm doing is looping through a string containing some of these "Illegal Characters". Now... (5 Replies)
Discussion started by: mrm5102
5 Replies

5. Shell Programming and Scripting

string comparison not working inside while loop

The string comparison highlighted below is not working fine. Please help: while read line do # Get File name by deleting everything that preceedes and follows Filename as printed in cvs status' output f_name=`echo $line | sed -e 's/^File://' -e 's/ *Status:.*//' | awk '{print $NF}'` ... (4 Replies)
Discussion started by: sudvishw
4 Replies

6. Shell Programming and Scripting

String comparison not working inside while loop

Hi, In the code included below, the string comparision is not working fine. Please help while (( find_out >= i )) do file=`head -$i f.out|tail -1` dir=`dirname $file` cd $dir Status="" if ; then Status=`cvs -Q status... (3 Replies)
Discussion started by: sudvishw
3 Replies

7. Shell Programming and Scripting

Expect - Comparison of expect value and loop selection

Hello All, I am trying to automate an installation process using expect and sh script. My problem is that during the installation process the expected value can change according to the situation. For Example if this is a first time installation then at step 3 I'll get "Do you want to accept... (0 Replies)
Discussion started by: alokrm
0 Replies

8. Shell Programming and Scripting

Comparison and editing of files using awk.(And also a possible bug in awk for loop?)

I have two files which I would like to compare and then manipulate in a way. File1: pictures.txt 1.1 1.3 dance.txt 1.2 1.4 treehouse.txt 1.3 1.5 File2: pictures.txt 1.5 ref2313 1.4 ref2345 1.3 ref5432 1.2 ref4244 dance.txt 1.6 ref2342 1.5 ref2352 1.4 ref0695 1.3 ref5738 1.2... (1 Reply)
Discussion started by: linuxkid
1 Replies

9. UNIX for Advanced & Expert Users

Comparison and For Loop Taking Too Long

I'd like to 1. Check and compare the 10,000 pnt files contains single record from the /$ROOTDIR/scp/inbox/string1 directory against 39 bad pnt files from the /$ROOTDIR/output/tma/pnt/bad/string1 directory based on the fam_id column value start at position 38 to 47 from the record below. Here is... (1 Reply)
Discussion started by: hanie123
1 Replies

10. Shell Programming and Scripting

Help with if loop (string comparison)

Hi Can someone please tell me what is wrong with this (ksh).. if + ]] then echo ${COMP_TEMP} fi What i need here is, say if the variable is a 1 or 2 digit number, then execute the if loop. Basically the variable can either be 1-30 or some other character sequence say '?', '&&'... (4 Replies)
Discussion started by: psynaps3
4 Replies

Featured Tech Videos