簡體   English   中英

Perl中的TTY,說明和一些示例

[英]TTY in perl, explaination and some examples

所以我試圖在另一個perl調試器中運行一個perl調試器。 我在perl中保持ttyin是解決方案。 有人可以告訴我tty是什么意思(終端類型?),它有什么用? 我在這里閱讀它: http ://search.cpan.org/~rjbs/perl-5.18.0/lib/perl5db.pl# $ CreateTTY我嘗試使用tty的原因是因為我問了以下問題: 將參數傳遞給調試器中的perl文件,並在系統執行的文件中設置斷點。感謝所有回答,你們告訴我的越多,我的想法越好:)

TTY(電傳打字機的縮寫)基本上是連接到終端的特殊輸入或輸出文件句柄,即用戶輸入。 有關具體細節,請參見:


對於初學者來說,這是您需要知道的(很難說更多,因為您沒有解釋使用TTY需要做什么):

  • 在Unix上,它通常映射到/dev/tty設備或類似設備

  • 您可以在Perl中使用-t進行測試


至於調試器,至少需要知道兩件事(如果您打算使用TTY,最后一段是最重要的)。 所有數據都在perldoc perldebug中引用

  1. p expr打印到$DB::OUT文件句柄( NOT STDOUT ),該文件句柄對/dev/tty打開。

    想,這可以通過控制LineInfo選項從PERLDB_OPTS但從來沒有發揮它所以不知道。

  2. 可能會受到以下$ENV{PERLDB_OPTS}選項的影響:

    • TTY-用於調試I / O的TTY。

    • noTTY-如果設置,調試器將進入非停止模式,並且不會連接到TTY。 如果被中斷(或者如果通過Perl腳本中的$ DB :: signal或$ DB :: single的顯式設置將控制權交給調試器),它將在啟動時連接到TTY選項中指定的TTY或在以下位置找到的tty:使用您選擇的Term::Rendezvous模塊運行時。

      該模塊應實現一個名為new的方法,該方法使用兩種方法返回對象:IN和OUT。 這些應返回文件句柄以用於相應地調試輸入和輸出。 新方法應在啟動時檢查包含$ ENV {PERLDB_NOTTY}值的參數,否則檢查“ $ ENV {HOME} /。perldbtty $$”的值。 不會檢查此文件的所有權,因此從理論上講可能會存在安全隱患。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM