如何使用命令提示符中的自动登录在 PuTTY 中运行命令文件?

如何使用命令提示符中的自动登录在 PuTTY 中运行命令文件?

我使用以下命令自动登录到远程服务器,然后运行列出的命令commands.txt,如下所示:

C:\path\to\putty.exe -load "[Sessionname]" -l [user] -pw [password] -m C:\path\to\commands.txt

commands.txt包含以下内容:

ps -elf|grep 'sometext'

但是,当我尝试这样做时,会出现一个新的 PuTTY 窗口,但它会在登录后立即关闭并退出。因此,我看不到命令​​的输出。

我不明白这里发生了什么。我的方法错了吗?还是我需要采取更多步骤让 PuTTY 窗口在退出之前暂停一段时间?

答案1

首先,您需要创建一个单独的文件,其中包含您想要执行的所有命令。

例如:我想下载并安装Drupal使用 PuTTY 在我的域上。为此,您必须:

首先创建一个 .txt 文件。该文件中包含命令。我的命令是:“drush dl drupal“下一行,”drush si --account-name=[帐户名称] --account-pass=[帐户密码] --db-url=mysql://[用户]:[密码]@localhost/[数据库名称] --y

保存该文件后,你现在要创建一个蝙蝠文件或者在 CMD 提示符中输入:

  • SSH 命令
  • @echo on [让你看看发生了什么]
  • [导航到您的 PuTTY 安装。我的是:] cd C:\Program Files\Putty
  • 开始putty.exe -ssh [domain name] -l [username] -pw [password] -m [the directory of the .txt file you created which contains the codes you want to be executed]

答案2

您应该使用plink.exe(PuTTY 后端的命令行界面),而不是putty.exe

你可以从PuTTY 下载页面

无链接:

似乎唯一的方法是使用-log <logfile>选项,然后打印其内容并将其删除。

答案3

如果您只想创建批处理文件来打开 Unix 机器,则不会有问题。以下是示例:

"PuTTY path" -ssh machinename -l username -pw password

PuTTY 路径应该用双引号引起来,例如“C:\Program Files\putty\putty.ext”

machinename = machinename(不带双引号)

密码 = 带引号

答案4

除了 Aviram 的回答之外:

下面是从命令提示符运行 PuTTY 命令的示例:

  • 首先进入PuTTY安装目录,例如C:\Program Files\PuTTY,然后执行以下命令:

    链接器-ssh 服务器 IP -P 端口号 -l 用户名 -pw 密码

相关内容