-
-
Notifications
You must be signed in to change notification settings - Fork 2.3k
Program doesn't work in subcommand #1949
Copy link
Copy link
Closed
Labels
Description
Fish Version.
$ fish --version
fish, version 2.1.1This program does not work in a subcommand.
# it works when run directly
$ /usr/local/bin/chruby-exec 2.2.0 -- ruby -v
ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-darwin13]
# it does not work when run in a fish subcommand
$ echo (/usr/local/bin/chruby-exec 2.2.0 -- ruby -v)
# it works when run in a bash subcommand
$ bash -c 'echo `/usr/local/bin/chruby-exec 2.2.0 -- ruby -v`'
ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-darwin13]
# it works when other programs run it or exec it
$ ruby -e '
puts `ruby -v`
puts `exec /usr/local/bin/chruby-exec 2.2.0 -- ruby -v`
exec "/usr/local/bin/chruby-exec", "2.2.0", "--", "ruby", "-v"
'
ruby 2.1.1p76 (2014-02-24 revision 45161) [x86_64-darwin13.0]
ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-darwin13]
ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-darwin13]
# it does work when used in a conditional
$ if /usr/local/bin/chruby-exec 2.2.0 -- ruby -v
echo success
else
echo failure
end
ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-darwin13]
success
# it does work when used in a pipeline
$ echo a b c | /usr/local/bin/chruby-exec 2.2.0 -- ruby -e 'p $stdin.read' | cat
"a b c\n"P.S. Is "subcommand" the right word for this?
Reactions are currently unavailable