Wie kann ich die vollständige Ausnahme anzeigen, die von einem Skript in der Shell ausgelöst wird?

608
Ramy

Wenn ich mein Ruby-Skript laufe, erhalte ich eine Ausnahme. Da ich jedoch Ubuntu in VMware Fusion verwende, kann ich die Größe meines Terminalfensters nicht ändern, sodass ich nicht die gesamte Ausnahme sehen kann.

Wie kann ich mir das Ganze ansehen?

ich habe es versucht

ruby script.rb > out.txt 

und

ruby script.rb | more 

aber keiner scheint zu funktionieren.

1

1 Antwort auf die Frage

2
grawity

In Unix wird die normale Programmausgabe normalerweise in den stdout- Stream geschrieben, und Fehler werden in stderr ausgegeben . (Eingabe heißt stdin .)

  • In sh / bash-Shells (auch in Windows cmd.exe) können Sie stderr2> umleiten :

    ruby script.rb> out.txt 2> err.txt

    Um auf dieselbe Stelle zu zeigen, 2>&1kann Folgendes verwendet werden:

    ruby script.rb> out.txt 2> & 1 # (Reihenfolge zählt)
    ruby script.rb 2> & 1 | Mehr
  • In bash können Sie >&beide gleichzeitig umleiten:

    ruby script.rb> & out.txt
    ruby script.rb | & more

In den meisten Linux-Terminals können Sie den Text mit Shift+ PageUpund Shift+ PageDownscrollen.

perfekt. Danke für die tolle Erklärung. Ramy vor 12 Jahren 0