代码之家  ›  专栏  ›  技术社区  ›  Pedrin

通过telnet运行应用程序

  •  2
  • Pedrin  · 技术社区  · 16 年前

    我需要创建一个BAT文件来通过telnet运行一个应用程序,但据我所知,在DOS上没有办法做到这一点。telnet不允许在连接的瞬间将任何命令发送到远程计算机,并且BAT文件中的每个后续命令只能在telnet停止后执行。这段假设的代码说明了我想做什么:

    telnet 100.99.98.1 "C:\Application\app.exe -a -b -c"
    

    这将在机器100.99.98.1上运行带有三个参数的app.exe。尽管我努力了,但什么都没用。有办法吗?

    TKS

    佩德林-巴蒂斯塔

    7 回复  |  直到 16 年前
        1
  •  1
  •   PW.    16 年前

    expect 尝试

    从网页:

    Expect是一种自动化工具 交互式应用程序,如 远程登录 ,ftp,passwd,fsck,rlogin, 小费等。期待真的使这个 琐碎的东西期望也是有用的 用于测试这些相同的应用程序。

        2
  •  6
  •   Alnitak    16 年前

    你试过了吗?

    echo "c:\application\app.exe -a -b -c" | telnet 100.99.98.1
    

    但是,如果远程telnet服务器需要用户名和密码,这将不起作用。

        3
  •  3
  •   cHao    16 年前

    由于您的路径,我假设您正在Windows平台上工作。我建议你看看 PsExec 来自Microsoft/SysInternals,它允许您在远程计算机上执行命令。

    PSEXEC 是卓越自由的一部分 PsTools 马克·鲁辛诺维奇的包裹。SysInternals最近被微软收购,但工具仍然是免费的。

    然而,这在互联网上不起作用。它使用Windows网络端口445,只应在本地网络上使用。如果需要的话,我建议使用ssh。

        4
  •  2
  •   Frank Grimm    16 年前

    以你想要的方式使用telnet是不可能的。

    您可以保护shell(ssh),但ssh服务器必须在远程计算机上运行(在本例中为100.99.98.1)。

    编辑:

    http://sshwindows.sourceforge.net/ 对于Windows的ssh客户机和服务器(基于cygwin)。

        5
  •  2
  •   S.Lott    16 年前

    你试过以下方法了吗?

    telnet 100.99.98.1 <someScript
    

    在某个地方有你的命令,例如, C:\Application\app.exe -a -b -c

    你看过吗? Remote Shell daemon 对于Windows?这可能比telnet好多了。

        6
  •  0
  •   Adam Liss    16 年前

    您的telnet应用程序需要在命令窗口中运行,还是只需要 开始 它来自命令行?如果你想“启动并忘记”,你可以考虑一个脚本化的终端程序,比如free-teraterm。您可以使用 start 命令并让它在后台执行脚本。

        7
  •  0
  •   joel.neely    16 年前

    你可以考虑使用 Cygwin (它提供在Windows上运行的类似Linux-/Unix的命令行环境)。作为cygwin的一部分,提供了广泛的标准工具,包括shell脚本。

    推荐文章