&& should work in a system call?

Hello.
It appears this run both commands, as expected (the first one fails):

system("ffmpeg -i || ls")

so should this run both commands, if the first succeeds?

system("ls && ls")
ls: &&: No such file or directory
ls: ls: No such file or directory
=> false

It doesn't seem to...but I could be mis understanding...
-r

system("ls && ls")
ls: &&: No such file or directory
ls: ls: No such file or directory
=> false

I see now that it works in Linux, but not windows. I'm guessing this
is a bug, but feedback is welcome...
-r

system("ls && ls")
benchmark.rb dense_long_to_int.cpp Makefile
sparse_long_to_double.cpp
benchmark.rb dense_long_to_int.cpp Makefile
sparse_long_to_double.cpp
=> true

filed http://bugs.ruby-lang.org/issues/7143

···

--
Posted via http://www.ruby-forum.com/.

There is not `ls` command on Windows (unless you install cygwin /
mingw yourself). You're looking for `dir`.

-- Matma Rex

···

2012/10/10 Roger Pack <rogerdpack2@gmail.com>:

system("ls && ls")
ls: &&: No such file or directory
ls: ls: No such file or directory
=> false

I see now that it works in Linux, but not windows. I'm guessing this
is a bug, but feedback is welcome...

system("ls && ls")
ls: &&: No such file or directory
ls: ls: No such file or directory
=> false

I see now that it works in Linux, but not windows. I'm guessing this
is a bug, but feedback is welcome...

There is not `ls` command on Windows (unless you install cygwin /
mingw yourself). You're looking for `dir`.

In this case, I have one:

$ whichr ls
higher in the list is executed first
C:\installs\devkit451\devkit451\bin\ls.exe
C:\Program Files (x86)\Git\bin\ls.exe

But it seems you can substitute any executable name in there to get
the offending behavior...
-r

Hm, interesting; I didn't run the code before, but I tried now and
confirm your observations.

-- Matma Rex

This is purely an educated guess... it possibly matters whether you have a SHELL environment variable set. If you do and it's set to bash or sh or csh, I think that this will work correctly. If it's not set, you'll get the Windows shell: cmd.exe - I don't think that it will grok &&.

Graham

···

On 11/10/2012 05:26, Roger Pack wrote:

  system("ls && ls")
ls: &&: No such file or directory
ls: ls: No such file or directory
=> false

I see now that it works in Linux, but not windows. I'm guessing this
is a bug, but feedback is welcome...

There is not `ls` command on Windows (unless you install cygwin /
mingw yourself). You're looking for `dir`.

In this case, I have one:

$ whichr ls
higher in the list is executed first
C:\installs\devkit451\devkit451\bin\ls.exe
C:\Program Files (x86)\Git\bin\ls.exe

But it seems you can substitute any executable name in there to get
the offending behavior...
-r

This is purely an educated guess... it possibly matters whether you have a
SHELL environment variable set. If you do and it's set to bash or sh or csh,
I think that this will work correctly. If it's not set, you'll get the
Windows shell: cmd.exe - I don't think that it will grok &&.

Yes, I was surprised to learn that, at least with windows OS's I've
tried, cmd.exe *does* understand &&. I'll be honest it surprised me
:slight_smile:
-r

Roger Pack wrote in post #1079580:

This is purely an educated guess... it possibly matters whether you have a
SHELL environment variable set. If you do and it's set to bash or sh or csh,
I think that this will work correctly. If it's not set, you'll get the
Windows shell: cmd.exe - I don't think that it will grok &&.

Yes, I was surprised to learn that, at least with windows OS's I've
tried, cmd.exe *does* understand &&. I'll be honest it surprised me

Indeed, cmd.exe sometimes surprises us in a good way

C:\mruby-git>cd build && cmake -G Ninja .. && ninja all test
-- Build type not set, defaulting to 'RelWithDebInfo'
-- The C compiler identification is GNU 4.7.2
-- Check for working C compiler using: Ninja
-- Check for working C compiler using: Ninja -- works
...
Total: 481
   OK: 481
   KO: 0
Crash: 0
Time: 0.004001 seconds

···

--
Posted via http://www.ruby-forum.com/\.