我正在尝试设置我的系统,以便在我的电脑打开时自动启动我的两个主要 Vagrant 盒,但是当我将其添加到 ~/.profile 的底部时,它会抛出一个错误,说没有这样的文件或目录
bash cd ~/Develop/Websites/scotch && vagrant up
bash cd ~/Develop/Websites/homestead && vagrant up
我可以将该行(减去 bash)粘贴到终端中,并且它可以正常工作。
有人告诉我不应该为此使用 ~/.profile 而应该使用 cron @reboot。
既然它不是必须运行的脚本,我该如何格式化它?它不是您运行的文件,而是必须位于特定文件夹中的命令。
答案1
看起来您想在子 shell 中运行这些命令以不影响运行.profile
脚本的 shell 的工作目录。
您可以使用该-c
选项通过命令行中给出的命令来运行 shell:
bash -c 'cd ~/Develop/Websites/scotch && exec vagrant up'
不过,使用子壳特征而不是当前 shell 的:
( cd ~/Develop/Websites/scotch && exec vagrant up )