Add to text file from command line via echo... possible to add to a particular line?[Scanned]

Jeff Vian jvian10 at charter.net
Thu Jun 29 18:08:50 UTC 2006


On Thu, 2006-06-29 at 12:18 -0500, Les Mikesell wrote:
> On Thu, 2006-06-29 at 17:37 +0100, Chris Bradford wrote:
> > >   
> > Any ideas as to why this:
> > 
> > echo -n "Would you like to configure SophosAV: (type yes/no) "
> > read ANSWER
> > 
> > if [ $ANSWER = yes -o YES ]
Chris,
the problem is here ^^^^^^^^^^^^
   if [ $ANSWER = "yes" -o $ANSWER = "YES" ]
would likely work.
Note that $ANSWER is a string and must be compared to a string value.
    in this context "yes" is a string but yes is not a string.
You also must make the comparison test in each case, both before and
after the -o above. Your construct would ask " does $ANSWER = yes
evaluate to true?"  OR "is YES true?".  This is two different questions
and does not get what I think you intended as a result.

Les' answer below would also accept a single key response. 

> > then
> >     echo 'good'
> >     echo 'Enter script to run here....'
> > 
> > else
> >     echo 'bad'
> >     echo 'Carry on to next part of current script...'
> > fi
> > 
> > Does not work?
> 
> You might find this construction easier:
> 
> read ANSWER
> 
> case $ANSWER
>  in
>  [Yy]*)
>     echo 'good'
>     echo 'Enter script to run here....'
>  ;; 
>  *)
>    echo 'bad'
>     echo 'Carry on to next part of current script...'
>  ;;
> esac
> 
> It's a little easier to write and much easier to add additional choices.
> Note that unlike C, you don't fall through after a match.
> 
> -- 
>   Les Mikesell
>    lesmikesell at gmail.com
> 
>  
> 




More information about the fedora-list mailing list