【发布时间】:2015-07-11 00:17:38
【问题描述】:
我有一个我希望能够运行的命令,我通常会在我的 Mac 启动时运行它。我尝试这样做的方式是在~/.bash_profile 中创建一个别名:
alias b2dinit="boot2docker up && $(boot2docker shellinit) && boot2docker ssh 'sudo /etc/init.d/docker restart'"
boot2docker shellinit 输出一些需要执行的命令。例如:
export DOCKER_HOST=tcp://192.168.59.103:2376
export DOCKER_CERT_PATH=/Users/mkobit/.boot2docker/certs/boot2docker-vm
export DOCKER_TLS_VERIFY=1
我遇到的问题是,当打开一个新的shell时,$(boot2docker shellinit)被执行,上面的export命令也被执行,或者如果boot2docker虚拟机没有激活它就会失败。
组织这个(别名、脚本等)的正确方法是什么?使用命令替换是否是正确的方法?
【问题讨论】:
标签: bash shell osx-yosemite command-substitution