3

This must be an easy one. I'd like to install Homebrew via a shell script on OS X.

Homebrew's recommended installation from the terminal works,

$ ruby <(curl -fsSk https://raw.github.com/mxcl/homebrew/go)

but if I put the following in a file test.sh,

#!/bin/sh
ruby <(curl -fsSk https://raw.github.com/mxcl/homebrew/go)

then execute it,

$ sh test.sh

I receive the following error:

test.sh: line 2: syntax error near unexpected token `('
test.sh: line 2: `ruby <(curl -fsSk https://raw.github.com/mxcl/homebrew/go)'

What is the correct syntax to use in a shell script to get this to work and why is it different from the command line? Thanks!

2 Answers 2

6

It's complaining because sh doesn't have that syntax, but bash does. Use #!/bin/bash instead.

Also, no need to use the sh command to execute shell scripts (that's the whole point of putting the hashbang!). Just chmod +x script.sh and invoke with ./script.sh

Sign up to request clarification or add additional context in comments.

Comments

1

When you run bash as sh it emulates sh, which has many fewer features than bash (including one you're trying to use here). Use /bin/bash instead.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.