1

我正在尝试在 VxWorks Shell 上运行一个脚本,它将加载一个模块。

我使用 Perl 脚本远程登录系统,登录并访问 shell。

我能够运行基本命令,如'i'、等。'time''ls' 'pwd''h'

但我想运行一个脚本,比如'test.o'。

如果我这样做:<C:\Path\subfolder\test.o 脚本文件将从 TORNADO Shell 运行。

但是我已经使用 Perl 连接到使用 Telnet。

所以我这样连接:

use Net::Telnet;
my $username = "username"; 
my $password = "password";

my $t = new Net::Telnet(Timeout=>10, Errmode=>'die');
$t->open('10.42.177.123');
$t->login($username,$password);                    # Logins as expected.
my @lines = $t->cmd('i');                          # To test
print @lines                                       # This works
@lines = $t->cmd('<C:\\Path\\Subfolder\\test.o');  # This is not working for me. HELP!
print @lines;                                      # Prints the Error below

我收到一条错误消息:

Unknown directory: /C:\Path\Subfolder
can't open input 'C:\Path\Subfolder\test.o
  errno = 0x1f5
-

如果脚本文件位于主机 PC 的特定文件夹中,我该如何运行它?

我可以从提示看起来像的 TORNADO SHELL 窗口手动运行脚本 ->。因此它是一个工作脚本。正如我所说,我能够运行和打印基本的 VxWorks Shell 命令(“内置函数”)。

有什么帮助吗?[我的操作系统是Win7]

谢谢!

4

1 回答 1

0

这个问题现在已经解决了。有两个问题,一个是因为 TORNADO,另一个 VxWorks 客户端也同时登录到系统中,而我正在尝试运行我的 perl 脚本,该脚本使用 Telnet 发送命令和执行指令,并且有两个客户端(Tornado 和我的脚本 Telnet 会话)同时运行(尽管在运行 TelnetDeamon 的嵌入式系统上运行的 VxWorks 操作系统)它不喜欢它。

至于上面的Error,为什么它不起作用并给出错误是语法错误。我应该用

$t->cmd('<\\Path\\subfolder\\test.o'); 

没必要给C:

于 2012-10-18T21:20:13.803 回答