I have a script. When I run it via "ruby myscript.rb", it works great.
When I run it via "./myscript.rb", it complains:
: No such file or directory.
The top of the file starts with "#!/usr/bin/env ruby", which works for
other scripts in the same directory. I know it's spelled right. And the
file is set executable.
The colon (":") at the start of the error message makes me think it's
looking for a file with no name when it should be looking for my script.
Again, the script works great when run as a param to the "ruby..."
command.
On 3/9/06, Nathan O. <nathan.olberding@gmail.com> wrote:
I have a script. When I run it via "ruby myscript.rb", it works great.
When I run it via "./myscript.rb", it complains:
: No such file or directory.
The top of the file starts with "#!/usr/bin/env ruby", which works for
other scripts in the same directory. I know it's spelled right. And the
file is set executable.
The colon (":") at the start of the error message makes me think it's
looking for a file with no name when it should be looking for my script.
Again, the script works great when run as a param to the "ruby..."
command.
Whenever I get weird messages like this it always turns out to be a
problem with line endings. By any chance did you last save the file on
a Windows system?
Sorry. I just noticed that it is already executable.
What if you use the path straight to the ruby interpreter, and not /usr/bin/env?
···
On 3/9/06, Michael Gorsuch <michael.gorsuch@gmail.com> wrote:
Did you "chmod +x" the script?
On 3/9/06, Nathan O. <nathan.olberding@gmail.com> wrote:
> I have a script. When I run it via "ruby myscript.rb", it works great.
> When I run it via "./myscript.rb", it complains:
>
> : No such file or directory.
>
> The top of the file starts with "#!/usr/bin/env ruby", which works for
> other scripts in the same directory. I know it's spelled right. And the
> file is set executable.
>
> The colon (":") at the start of the error message makes me think it's
> looking for a file with no name when it should be looking for my script.
> Again, the script works great when run as a param to the "ruby..."
> command.
>
> --
> Posted via http://www.ruby-forum.com/\.
>
>
Your script has been on a Windows box or otherwise polluted with a \r
(Carriage return) after ruby?
That's it, that's the one. I had this problem with another script the
other day. It "went away" after I did a whole bunch of stuff. This
must've been it.