微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

无法访问 ttl (teraterm) 脚本中的输入变量

如何解决无法访问 ttl (teraterm) 脚本中的输入变量

我想执行一个连接到各种 linux 服务器的 teraterm 脚本并执行一些命令。 tera term 脚本将是批处理文件的一部分。有没有办法将任何输入变量从批处理文件传递给 teraterm 脚本/.ttl 脚本?

目标实现逻辑:

  1. 设置:从 Windows PC 上,我必须访问多台 Linux PC 并执行某些通用命令。
  2. 期望按如下方式实现批处理文件

2.1

2.2 循环:

2.2.1 检查 linux m/c IP 是否可以 ping 通

2.2.1.1 通过传递Linux m/c IP和Linux m/c名称来执行ttl脚本 ttl 脚本将具有登录到 Linux m/c IP(输入变量)的逻辑

代码: 试用 1 批处理文件

@echo off
ping -n 1 -6 [111:222:333:444:555:666:777:888] | find "time" >nul
if errorlevel 1 (
    echo host not reachable
) else (
    echo host reachable
    START "c:\Program Files (x86)\teraterm\ttpmacro.exe" test.ttl
)

试用 2 批处理文件

@echo off
ping -n 1 -6 [111:222:333:444:555:666:777:888] | find "time" >nul
if errorlevel 1 (
    echo host not reachable
) else (
    echo host reachable
    START "c:\Program Files (x86)\teraterm\ttpmacro.exe" test.ttl "111:222:333:444:555:666:777:888"
)

试用 2 批处理文件

@echo off
ping -n 1 -6 [111:222:333:444:555:666:777:888] | find "time" >nul
if errorlevel 1 (
    echo host not reachable
) else (
    echo host reachable
    START "c:\Program Files (x86)\teraterm\ttpmacro.exe" test.ttl "111:222:333:444:555:666:777:888" "asdf"
)

TTL 文件

connect '[111:222:333:444:555:666:777:888] /ssh /2 /nosecuritywarning /auth=password /user=user /passwd=userpwd'

wait '~#'

sendln 'su -'
wait 'Password'
sendln 'rootpwd'

sendln 'date'
wait '~#'
pause 1

sendln 'exit'
wait '~#'

int2str s paramcnt
dispstr s " " param1 " " param2

观察:不考虑通过 Trial1/2/3 批处理文件传递的参数,执行批处理文件时观察到的输出

....
    
FE:~# 1 test.ttl

可能的根本原因:输入变量在批处理文件中传递给 TTL 的方式可能有问题??

无法找到正确的格式/用法/语法参考。收到的帮助将不胜感激。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。