繁体   English   中英

SSH tectia,如何运行批处理命令?

[英]SSH tectia, how to run batch commands?

我在 Windows 环境中有 tectia ssh 服务器。 当我使用sftpg3 -B cmd.txt username@host时效果很好。 唯一的问题是它不允许我远程执行文件,它只允许我移动文件。 它从 cmd.txt 读取命令,但由于我无法执行任何操作,它会忽略这些命令。

好吧,当我做同样的事情但使用 sshg3 时,它根本不识别 -B 标志。

SSHG3 -B cmd.txt username@host

cmd.txt' 不是内部或外部命令、可运行程序或批处理文件。

我试过把 -B "cmd.txt"

我尝试将 cmd.txt 内容放在同一个脚本中,而不是将它们放在 cmd.txt 中并摆脱-B ,但它也不会以这种方式运行它们。

文档没有太多可取之处。 它所说的只是使用 -B 进行批处理。

cmd.txt的内容:

D: cd Library cd Backup parseLibrary.cmd exit

尝试 sshg3 进入主机,导航到路径并在该主机上运行批处理文件。 有任何想法吗?

-B, --batch-mode 使用批处理模式。 如果需要在终端上进行用户交互,则认证失败。

使用批处理模式要求您之前已将服务器主机密钥保存在客户端上,并为用户身份验证设置了非交互方法(例如,基于主机的身份验证或不带密码的公钥身份验证)。

它确实使用公钥认证,终端上不需要用户交互。

在 sftpg3 的文档中注意到了这一点

-B [ - | 批处理文件]

-B - 选项允许从标准输入读取。 当您想要使用 sftpg3 启动进程并重定向标准输入管道时,此选项很有用。

通过将 batch_file 的名称定义为属性,您可以在批处理模式下从给定文件执行 SFTP 命令。 该文件可以包含任何允许的 SFTP 命令。 有关命令的描述,请参阅“命令”部分。

使用批处理模式要求您之前已将服务器主机密钥保存在客户端上,并为用户身份验证设置了非交互方法(例如,基于主机的身份验证或不带密码的公钥身份验证)。

我猜批处理文件与批处理模式不同?

*我想到了。 您必须为要执行的每个命令使用 -B 标志。

我想到了。 您必须为要执行的每个命令使用 -B 标志。 sshg3 user@host -B dir -B ipconfig -B etc.cmd

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM