Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 21 Nov 2002 22:49:16 +0100
From:      pbdlists@pinboard.com
To:        Brian Henning <b1henning@hotmail.com>
Cc:        questions@FreeBSD.ORG
Subject:   Re: shell script
Message-ID:  <20021121224915.B21940@pinboard.com>
In-Reply-To: <OE62iJCAgn5yIVqVWrx0000bf2c@hotmail.com>; from b1henning@hotmail.com on Thu, Nov 21, 2002 at 02:10:48PM -0600
References:  <OE62iJCAgn5yIVqVWrx0000bf2c@hotmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Hello Brian,

First of all, your script will not run, you forgot a closing quote on
the third line from the end.

But not to your problem. I was pounding over a similar issue recently
and the solution I came up with was to replace the for loop with a while
loop combined with a read command.

not working:
	for L in `cat inputfile`
	do
		echo "the line read is: ${L}"
	done

works fine:
	cat inputfile | while read L
	do
		echo "the line read is: ${L}"
	done

Cheers,

Kurt

On Thu, Nov 21, 2002 at 02:10:48PM -0600, Brian Henning wrote:
> Hello,
> 
> i have a simple shell script problem. if i have a file name with a space in
> the name the following script doesn't get the entire name. The for loop
> conditional statement below stops for spaces or new lines... i would like it
> to stop for just new lines. is there a way to do that with shell script. how
> can i change the condition in the for loop to do that?
> 
> Thanks,
> brian
> 
> input.txt
> --------
> Tom Petty - Free Fallin'.mp3
> Dave Matthews.mp3
> 
> 
> size.sh
> -------
> #!/bin/sh -x
> # sh size.sh /smb/dc input.txt
> 
> PATH=$1
> INPUT=$2
> 
> for i in `/bin/cat ${INPUT}`; do
>     echo "in loop"
>     FILE=`echo $i | /usr/bin/awk -F: '{ print $1 }'`
>     SIZE=`echo $i | /usr/bin/awk -F: '{ print $2 }'`
> 
>     echo "${FILE}
> done
> exit 0;
> 
> 
> current result
> -------------
> Tom
> Petty
> -
> Free
> Fallin'.mp3
> Dave
> Matthews.mp3
> 
> 
> desired result
> --------------
> Tom Petty - Free Fallin'.mp3
> Dave Matthews.mp3

--
----------------------------------------------------------------------
: Kurt@pinboard.com          http://www.pinboard.com/       business :
:                            http://kurt.www.pinboard.com/  private  :
----------------------------------------------------------------------
:                    Unix and Internet Specialist                    :
: PGP fingerprint C34E BCD4 BA8B 1337 14FE  116C 2657 FFAC 08B9 BFC7 :
----------------------------------------------------------------------

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021121224915.B21940>