PuTTYから実行すると、画面をスクロールするスクリプトがあります。ここで、戻ってエラーを確認したいのですが、上にスクロールすると、過去のコマンドは表示されますが、コマンドの出力は表示されません。
過去の出力を確認するにはどうすればよいですか?
Shift + Pgup/PgDnは、スクロールバーを使用せずにスクロールできるはずです。
コマンドの出力をless
のようなものにパイプしない場合、PuTTYのスクロールバーを使用して以前の出力を表示できます。
PuTTYには、バッファに保持する過去の出力の行数の設定があります。
スクロールする前に
後ろにスクロールした後(上向き)
less
のようなものを使用すると、出力はPuTTYのスクロールバッファーに入りません。
使用量を減らした後
リモートシェルのスクロールバッファを適切に制御したい場合は、 screen を使用することをお勧めします。
以下を設定することにより、ニーズに合わせてスクロールバッファサイズを変更できます。
defscrollback 4000
~/.screenrc
で、バッファリングする行数(この場合は4000)を指定します。
次に、スクリーンセッションでスクリプトを実行する必要があります。セッション内でscreen ./myscript.sh
を実行するか、最初にscreen
を実行してから、./myscript.sh
を実行します。
コンソール出力のファイルへのログ記録を有効にすることもできます。詳細については、画面の manページ を参照してください。
あなたの説明から、「問題」は、screen、tmux、またはそれらに依存する別のウィンドウマネージャー(byobu)を使用していることのように聞こえます。通常、PuTTYで問題なくスクロールして戻ることができるはずです。例外には、端末上に独自の「ウィンドウ」を作成するlessやnanoなどのアプリケーションを使用している場合が含まれます。
Screenとtmuxを使用すると、通常はSHIFT + PGUP
でスクロールして戻ることができます(リモートマシンの物理端末から実行できるのと同じです)。また、どちらにも「コピー」モードがあり、カーソルをプロンプトから解放し、矢印キーを使用してカーソルを移動できます(キーボードだけでコピーするテキストを選択するため)。また、PGUP
キーとPGDN
キーを使用して上下にスクロールすることもできます。 screenまたはtmuxバックエンドを使用したbyobuでのコピーモードには、F7
を押すことでアクセスできます(注意してください。F6
はセッションを切断します)。画面のすぐ下でこれを行うには、CTRL + a
を押してから、ESC
または[
を押します。 ESC
を使用してコピーモードを終了できます。 tmuxで、CTRL + b
を押してから[
を押してコピーモードに入り、]
を押して終了します。
もちろん、最も簡単な解決策はどちらも使用しないことです。私は両方とも、それらが価値があるよりもかなり厄介であることに気づきました。リモートマシンで複数の異なる端末を使用したい場合は、PuTTYの複数のインスタンスに接続し、Windowsを使用してWindowsを管理するだけです。今私を許してください、しかし私は私の異端のために火刑に処される前に逃げなければなりません。
編集:ほとんど忘れてしまいました。PuTTYが正しく構成されていないと、一部のキーがリモート端末で正しく受信されない場合があります。 PuTTY構成でTerminal -> Keyboard
を確認します。おそらく、ファンクションキーとキーパッドをLinux
またはXterm R6
のいずれかに設定する必要があります。上記を試みたときに端末に奇妙な文字が表示されている場合は、これが問題である可能性があります。