【问题标题】:launch putty from shell script从 shell 脚本启动 putty
【发布时间】:2013-03-18 07:23:45
【问题描述】:

我编写了一个 shell 脚本,它为用户提供一个登录帐户列表,当用户选择一个帐户时,他/她通过 ssh 登录到所选帐户。脚本从主帐户运行并具有密码- 与列表中的所有其他帐户(从属)的 ssh 连接较少。我想launch another putty session 与从属帐户详细信息作为参数传递,而不是来自主帐户的 ssh 连接。我怎样才能实现这一点?

我想到的一件事是,如果我可以编写一个将帐户信息作为参数的批处理文件(我的用户使用 windows)。并且这个批处理 script 可以在 unix 脚本中调用(这可能吗)。所以 unix 脚本将通过 ssh 在 windows 上执行批处理文件,并且在此过程中它还将参数(服务器详细信息)传递给 putty。

或者还有其他更好的方法吗?

编辑

要从 linux 机器 ssh 到 windows 机器,是否必须在 Windows 机器上托管某种服务器(即 telnet、ssh、ftp 或任何其他类型的服务器)?

【问题讨论】:

  • "可以在 unix 脚本中调用批处理"。你这是什么意思?你不能在 Windows 上运行 unix shell 脚本(除非你使用像 cygwin 之类的东西),无论如何你只能使用 ssh。可能我没听懂……
  • 我还是不明白你是如何从 unix 脚本调用 windows 批处理文件的...你是从 *nix 盒子 ssh 到 Windows 盒子吗?
  • 是的,要从 unix 在 windows 上执行批处理文件,我必须 ssh 到 windows 并运行这个批处理文件。
  • 查看这个:etherealmind.com/putty-command-line 以获取有关从命令行运行 putty 的信息。另外,我并不完全清楚您是如何执行此操作的,但您可以将用户凭据设置为 Windows 变量
  • 另外:理论上,你应该可以使用 ssh -t user@host 'C:\pathtoputty\putty.exe'。使用上面的链接(和转义字符),您应该能够拼凑出我认为您的意思:)

标签: linux windows unix ssh putty


【解决方案1】:

如果您要从 GNU Linux 或 UNIX 机器上运行,则根本不需要使用 putty。只需使用 SSH。原生 SSH 中的选项比通过 PuTTY 等不那么原生的东西运行要灵活得多。

是的,您的目的地需要一台服务器才能“捕获”来自您的源计算机的连接。您还必须确保默认端口 22 一直处于打开状态。

但是...从听起来你想要做的事情来看。我建议您考虑使用 SSH 密钥并通过 su/sudo “启动” SSH。 (而不是普通用户启动 su/sudo 来获取 root。root 帐户可以在另一个帐户下启动 ANYTHING。)

【讨论】:

    猜你喜欢
    • 2011-11-26
    • 1970-01-01
    • 2019-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-15
    • 2016-05-10
    • 2019-10-18
    相关资源
    最近更新 更多