Welcome to the new Linux Foundation Forum!

Reading Users Guide, script don't run???

#!/bin/sh

echo "Hi there"

echo "What is your name? Rob"

read NM Rob

echo "Hello $NM"

The book is a bit dated and wondered if the read command syntax changed a bit for bash shell?

I get the first two lines but don't get the hello rob part.

Comments

  • atreyuatreyu Posts: 216
    tw3ak wrote:
    #!/bin/sh
    echo "Hi there"
    echo "What is your name? Rob"
    read NM Rob
    echo "Hello $NM"


    The book is a bit dated and wondered if the read command syntax changed a bit for bash shell?
    I get the first two lines but don't get the hello rob part.

    Hmm..well, I can tell you that NM would be set to the first word that was taken as input to the "read" command, and Rob would be set to the second word, if given. E.g.
    $ read NM Rob
    joe blow
    $ echo $NM
    joe
    $ echo $Rob
    blow
    

    To be less obtuse, the script's last line should be
    echo "Hello $NM $Rob"
    
    although those variable names don't really make sense.
  • tw3aktw3ak Posts: 37
    That script was installed exactly as the page was typed I even pasted it once to see if there was something about the read command that I wasn't getting.???
  • CCCCCC Posts: 12
    tw3ak wrote:
    #!/bin/sh
    echo "Hi there"
    echo "What is your name? Rob"
    read NM Rob
    echo "Hello $NM"


    The book is a bit dated and wondered if the read command syntax changed a bit for bash shell?
    I get the first two lines but don't get the hello rob part.

    I just had a thought. After you get the first two lines, what do you do?

    You've told the script to print out those two lines and then wait for someone to type something in on the keyboard, and press enter. If you're not typing something in and hitting enter, then you're not going to get a "Hello Rob" (the computer has infinite patience, it will wait for years for that keyboard input if necessary...)

    In fact, you've asked it for two pieces of input...
Sign In or Register to comment.