0

端末ウィンドウを使用してデバイスに telnet し、showどの印刷設定を入力すると、特定の行数が表示-- more --され、下部にキーボードの Return または Space を数回押して、すべてが表示されるまで残りのコマンドを取得できます。画面上で、あなたはそれがどのようであるかを知っています。

$t->print('show');

問題はどちらでもない

while (my $line = $t->getline()) {
    print $line;
}

また

my @lines = $t->getlines(All => 0); # or All => 1 

端末ウィンドウと同じように、最初の数行だけが表示されます。

cmd()そのボックス(スクリプトが実行されるマシン、デバイスについては話していません)でまたはを使用ExpectできNet::OpenSSHず、gccがなく、パッケージマネージャーが機能していません。(読む: インストールできませんIO::Pty)

コマンドの残りの出力を取得するにはどうすればよいですか?

4

1 に答える 1

1

show使用するページングをオフにするオプションがない場合は、各ページの後にキーを押すのを待って、適切->print('')なタイミングで継続文字を送信する必要があります。

于 2014-04-15T13:20:23.127 に答える