0
例如,我可以這樣做:如何在bash命令行中指定兩個變量?
ENV=dev ruby script.rb
但我怎麼能這樣做呢?
USER=aa PASS=bb ruby script.rb
我不能使用此:
export USER=aa
export PASS=bb
ruby script.rb
我必須這樣做,在一行
例如,我可以這樣做:如何在bash命令行中指定兩個變量?
ENV=dev ruby script.rb
但我怎麼能這樣做呢?
USER=aa PASS=bb ruby script.rb
我不能使用此:
export USER=aa
export PASS=bb
ruby script.rb
我必須這樣做,在一行
據我所知,每一個Bourne shell中允許任意數量的name = value對的前一個命令來建立環境。 Bash當然會。
$ foo=foo bar=bar env | grep -E 'foo|bar'
foo=foo
bar=bar
'USER = aa PASS = bb ruby script.rb'按預期工作。你爲什麼認爲它不起作用? – ymonad
PASS在腳本中爲空 – Sato
@Sato,嘗試'USER = aa PASS = bb env | egrep'USER | PASS'',你會看到'USER'和'PASS'集合。不管你的ruby環境出了什麼問題, shell正在做它應該做的事情。 –