我在 CMD 中使用以下命令远程打开 Putty(使用 centos 6)并执行保存在计算机中的文件 command.txt 中的命令。
putty.exe root@ip port -pw password -t -m commands.txt
然而,只有当commands.txt文件大小约为5kb时它才有效。
如果有人能帮忙的话,请问两个问题:
a) 问题 1:我应该怎么做才能运行更大的 command.txt 文件?
b)问题 2:在 CMD 中,如果我使用 3 个不同的命令文件执行 3 个命令行,比如“commands1.txt”、“commands2.txt”和“commands3.txt”,然后将下面的所有作业粘贴到 CMD 中,它将同时打开 3 个 putty 并同时执行所有操作。
putty.exe root@ip port -pw password -t -m commands1.txt
putty.exe root@ip port -pw password -t -m commands2.txt
putty.exe root@ip port -pw password -t -m commands3.txt
如何让 CMD 按精确的顺序执行而不是同时打开所有内容?
这是,将打开服务器,执行
putty.exe root@ip port -pw password -t -m commands1.txt
只有当 finish 时才会执行
putty.exe root@ip port -pw password -t -m commands2.txt
并且只有当 finish 时才会执行
putty.exe root@ip port -pw password -t -m commands3.txt
怎么做才能让它不同时完成所有 3 项工作,而是按照我放置的顺序一个接一个地完成?
答案1
命令大小限制是由服务器施加的,而不是 PuTTY 限制。
一种解决方案是将文件上传到服务器(例如使用psftp
或pscp
),授予其x
权限,然后使用PuTTY 执行它。
虽然自动执行命令的正确工具是PLink(来自 PuTTY 包)。
Plink 是一个控制台应用程序,因此它可以从标准输入读取命令。这样,就没有限制了,因为命令是逐个读取和执行的(就像在 shell 中输入命令一样):
plink -P port username@host < command.txt