2016-09-06 101 views
2

我使用bash 4.3,我不能出口或設置泊塢窗機環境變量無法設置泊塢窗機環境變量的bash

bash-4.3$ docker-machine env default 
set -gx DOCKER_TLS_VERIFY "1"; 
set -gx DOCKER_HOST "tcp://192.168.99.100:2376"; 
set -gx DOCKER_CERT_PATH "/Users/ofolorunso/.docker/machine/machines/default"; 
set -gx DOCKER_MACHINE_NAME "default"; 
# Run this command to configure your shell: 
# eval (docker-machine env default) 

顯然的bash不承認g標誌

bash-4.3$ eval "$(docker-machine env default)" 
bash: set: -g: invalid option 
set: usage: set [-abefhkmnptuvxBCHP] [-o option-name] [--] [arg ...] 
bash: set: -g: invalid option 
set: usage: set [-abefhkmnptuvxBCHP] [-o option-name] [--] [arg ...] 
bash: set: -g: invalid option 
set: usage: set [-abefhkmnptuvxBCHP] [-o option-name] [--] [arg ...] 
bash: set: -g: invalid option 
set: usage: set [-abefhkmnptuvxBCHP] [-o option-name] [--] [arg ...] 

我要指出,我的機器的默認外殼是fish

回答

6

你試過迫使慶典與--shell選項?

docker-machine env --shell bash default 
export DOCKER_TLS_VERIFY="1" 
export DOCKER_HOST "tcp://192.168.99.100:2376" 
export DOCKER_CERT_PATH "/Users/ofolorunso/.docker/machine/machines/default" 
export DOCKER_MACHINE_NAME="default" 

信封變量被設置在魚set -gx,並在bash export

+0

要擴大一點這個答案。如果你的登錄shell是fish,並且你輸入'bash'來啓動一個bash shell,'$ SHELL' env var仍然會引用fish命令;例如/ usr/local/bin/fish。這反過來會混淆像'docker-machine'這樣的程序來檢查'$ SHELL'來決定如何在shell中設置變量。 –

0

集已在bash沒有標誌-g。我不知道你想用這些標誌做什麼,但是如果你想設置環境或shell變量,請看this

例如,要設置一個變量的使用是這樣的:export ANT_HOME=/path/to/ant/dir