2012-03-20 11 views
10

の "^ C" を隠す:ルビー - 私は、次のしているRubyで割り込み

# Trap Interrupts 
trap("INT") do 
    puts "Shutting down..." 
    exit 
end 

私はプログラムを中断すると、次のようにする(Mac OSXライオン)に印刷されています

^CShuttingダウン...

Ruby内から^Cを隠す方法はありますか?

+3

「C」(「リンクを閉じる...」のようなもの)で終了メッセージを開始してから「C」を省略します:)( '^' – itdoesntwork

答えて

9

制御文字がエコーされるかどうかは、使用しているttyのプロパティです。 stty -echoctlは、制御文字のエコーを無効にするUnixの方法です。 Rubyスクリプト内からこのコマンドを実行し、Unix-ishシステムを使用している場合でも同じ効果を得ることができます。

3

LinuxとMac OS X端末の私のPythonプログラムでは、キャリッジリターン(\ r)でメッセージを開始して^ Cを隠すことができます。それはハックのように感じますが、うまく動作します。

関連する問題