📌  相关文章
📜  通过 ssh 运行脚本 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:28:23.706000             🧑  作者: Mango

通过 SSH 运行脚本 - Shell/Bash

当我们需要在远程服务器上运行一些脚本时,可以通过 SSH 连接到服务器并执行脚本。这种方法可以让我们避免在本地安装软件和配置环境,同时也允许我们在远程服务器上运行一些需要 root 权限才能操作的命令。

步骤
步骤一:登录远程服务器

使用以下命令登录远程服务器:

ssh username@servername

其中,username 是远程服务器上的用户名,servername 是远程服务器的主机名或 IP 地址。

当第一次登录时,SSH 会提示你确认远程服务器的身份。输入 yes 即可继续登录。此后,你将被要求输入远程服务器上的密码,在输入密码后即可成功登录。

步骤二:编写脚本

在登录远程服务器后,可以使用文本编辑器编写脚本。这里以 test.sh 为例:

#!/bin/bash
echo "hello world"
步骤三:运行脚本

在 SSH 连接远程服务器后,可以将脚本复制到远程服务器上,然后运行该脚本。

上传脚本

在本地终端中,使用以下命令将脚本上传到远程服务器上:

scp test.sh username@servername:/path/to/remote/folder

其中,/path/to/remote/folder 是远程服务器上存放脚本的目录。请替换 usernameservername 为你自己的远程服务器信息,如:

scp test.sh root@example.com:/root

运行脚本

在远程服务器上,使用以下命令运行脚本:

bash test.sh

或者在脚本文件的第一行添加 #!/bin/bash,然后使用以下命令运行脚本:

./test.sh
步骤四:退出远程服务器

当完成工作后,可以使用以下命令退出远程服务器并返回本地终端:

exit
注意事项
  • 当登录远程服务器时,确保 SSH 服务已经启动。
  • 在上传脚本时,确保目标文件夹存在并且你有足够的权限访问该目录。
  • 如果想要在脚本中使用管道、变量、循环等语法,请确保脚本文件的第一行使用 #!/bin/bash
  • 如果在上传脚本时提示 Permission denied,请检查远程服务器上相关目录的权限设置,确保你有足够的权限上传脚本文件。