shell script problem

Polytropon freebsd at edvax.de
Sun Dec 23 09:43:10 UTC 2012


On Sun, 23 Dec 2012 10:34:34 +0100, Polytropon wrote:
> First, the lines with "read" have to be:
> 
> cat /foo/bar.txt | while read $LINE1
> 
> 	cat /foo/bar/foo/bar.txt | while read $LINE2
> 
> Reason: $LINE1 and $LINE2 will be evaluated here, they are "empty
> string", causing "read" to throw an error.

Excuse me - I made a mistake! Of course those two lines
have to be:

cat /foo/bar.txt | while read LINE1

and

	cat /foo/bar/foo/bar.txt | while read LINE2

The $ infront of the variable names have to be removed.
The variable _name_, not its content, has to be provided
to "read" as a parameter.

The script so far:



#!/bin/sh

cat foo.txt | while read LINE1
do
	cat bar.txt | while read LINE2
	do
		if [ "$LINE1" = "$LINE2" ]; then
			sw="1"
			echo "Current value of sw is : " $sw
			break
		fi
	done
	echo "Value of sw is : " $sw
	if [ "$sw" = "0" ]; then
		echo "DO SOMETHING!"
	fi
	sw="0"
done



-- 
Polytropon
Magdeburg, Germany
Happy FreeBSD user since 4.0
Andra moi ennepe, Mousa, ...


More information about the freebsd-questions mailing list