我有 deploy.sh,这就是内容。
#!/bin/bash
ssh root@202.119.36.10
cd ../var/www/myProject
我运行 bash deploy.sh
CD 部分不工作?我的想法是自动化我的部署,现在我必须手动转到目录,执行 git pull 并重新启动我的节点服务器。
最佳答案
你的脚本意味着:
- 登录到您的服务器。
- 注销后,在您的计算机上运行
cd ../var/www/myProject
命令。
您可以将所有命令放在 Here document 中
#!/bin/bash
ssh root@202.119.36.10 <<EOF
cd /var/www/myProject
EOF
通常,如果我们切换到系统文件夹,如/var
、/etc
,我们会使用绝对路径。
或者,将您要在服务器上执行的所有命令放在一个脚本文件中。
文件deploy.sh的内容:
cd /var/www/myProject
将此脚本复制到您的服务器,然后运行它:
scp deploy.sh root@202.119.36.10:
ssh root@202.119.36.10 bash deploy.sh
或者通过here-document运行脚本
ssh root@202.119.36.10 bash < deploy.sh
关于linux - cd 不能在 linux 服务器的 bash 脚本中工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52365466/