【问题标题】:Can't launch putty with remote command?无法使用远程命令启动腻子?
【发布时间】:2018-05-11 00:49:26
【问题描述】:

我正在尝试通过命令行启动 putty,使其在服务器上运行命令(我想创建一个 Windows 快捷方式,以跟踪日志文件)

到目前为止,我有一个包含这个的批处理文件

"C:\Program Files (x86)\PuTTY\putty.exe" -ssh -t -pw -m tail_catalina_out -load "myprofile"

在我的服务器中,我在根目录中有一个名为 tail_catalina_out 的文件,其中包含以下内容。

tail -f /opt/tomcat/logs/catalina.out

Putty 启动并且我的会话成功启动,但尽管如此,似乎没有执行任何命令?我是否误解了它的工作原理?

【问题讨论】:

    标签: putty


    【解决方案1】:
    1. 你不需要-ssh-load profile(如果你使用像我的测试这样的非标准端口,它根本不起作用);事实上,[user@]host 不需要它,因为它是默认设置

    2. -pw -m tail_catalina_out 使用 -m 作为您的密码(我希望它不正确,因此除非设置了公钥身份验证,否则应该重新提示您)并忽略 tail_catalina_out

    3. -m 的文件必须是本地,即在 PuTTY 机器上而不是在服务器上(尽管其中的命令将被发送到并且必须在服务器上有效) )

    因此:"\path\to\putty" -t -m localcmdfile -load profile

    您还可以使用plink,它在控制台中运行,并在最后一个选项之后使用-m localfile 命令行上的实际远程命令(如OpenSSH客户端ssh) :

     "\path\to\plink" -t -load profile tail -f remotefile
    

    像往常一样,如果路径不包含空格,您可以省略路径周围的引号。我个人使用\progra~2 而不是打扰"\program files (x86)" 但这只是我,它可能取决于全新安装(而不是升级)。

    【讨论】:

    • 啊,我怎么没注意到 pw 标志还在!我想我对 -M 命令感到困惑,因为文档说“-m:从文件中读取远程命令或脚本”,所以我假设文件在远程机器上。当我下次上班时,我将不得不尝试这一切。非常感谢!
    猜你喜欢
    • 2014-07-20
    • 1970-01-01
    • 1970-01-01
    • 2020-06-03
    • 1970-01-01
    • 2019-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多