1

モジュールをロードするスクリプトを VxWorks Shell で実行しようとしています。

Perl スクリプトを使用してシステムに telnet で接続し、ログインしてシェルにアクセスします。

'i''time'などの基本的なコマンドを実行でき'ls' 'pwd'ます'h'

しかし、「test.o」などのスクリプトを実行したいと思います。

私が行う場合:<C:\Path\subfolder\test.o スクリプト ファイルは TORNADO シェルから実行されます。

しかし、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 シェル コマンド (「組み込み関数」) を実行して出力することができます。

何か助けはありますか?【私のOSはWin7です】

ありがとう!

4

1 に答える 1

0

この問題は解決されました。2 つの問題がありました。1 つは、別の VxWorks クライアントである TORNADO も同時にシステムにログインしていたためです。コマンドを送信し、Telnet を使用して命令を実行する perl スクリプトを実行しようとしていて、2 つのクライアント (Tornado と私のスクリプト Telnet セッション) が同時に実行されている (TelnetDeamon が実行されている組み込みシステム上で VxWorks OS が実行されているにもかかわらず) 気に入らなかったのです。

上記のエラーについては、なぜ機能せず、エラーが発生したかは、構文エラーでした。使うべきだった

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

あげる必要なしC:

于 2012-10-18T21:20:13.803 に答える