#!/bin/csh
ssh -o StrictHostKeyChecking=no xyz123@remotemachine.com
sudo -su rootuser
ksh
. /mydir/setup_env.ksh
ls -ltr
以上是我需要完成的任务列表。
- 在没有密码提示的情况下登录远程机器
- 运行 Sudo 以访问 Root
- 将 shell 更改为 ksh
- 执行脚本(setup_env.ksh)
- 使用 ls -ltr 列出文件
当我从 执行此脚本时,假设是 localunixmachine.com...
- 它问我密码
- 一旦我输入密码,它将传输到远程机器但不会执行剩余的命令
- 如果我退出远程 session ,它将执行剩下的命令。
你能指导我什么是完成我在这里尝试的最好方法吗?
最佳答案
首先你可以复制你的 ssh 公钥,你可以生成 ssh-keygen
to authorized_keys 到远程服务器 root/.ssh/authorized_keys
然后脚本将是
ssh root@remotemachine.com "/bin/ksh mydir/setup_env.ksh"
关于linux - 远程机器中 Sudo 的 Shell 脚本并执行命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21804106/