SSH 远程执行本地脚本并附带参数

SSH 远程执行本地脚本并附带参数

我正在尝试使用 SSH 远程执行本地脚本,下面是我操作的方法:

function remoteRun{

if [ $# -ls 2 ]; then
    usage()
    exit 1
fi
    ssh $1@$2 'bash -s' < $3
}
remoteRun user host script.sh

现在我尝试做同样的事情,但将一些参数传递给 script.sh 脚本。

您认为类似的事情会按预期进行吗?

remoteRun user host script.sh all step

如果不是,当您需要在 Box A 上生成脚本但在 Box B 中执行它们时,您的最佳做法是什么?

答案1

function remoteRun()
{

   if [ $# -ls 2 ]; then
      usage()
      exit 1
   fi

cat << FOOF > /tmp/script
ls -l /var/log/
FOOF

   scp /tmp/script user@host:/tmp/
   ssh user@host "bash /tmp/script"
}

remoteRun user host script.sh

相关内容