rails debugger 幾個命令

Info

顯示相關(guān)信息

  • info args # Argument variables of current stack frame

       [7, 16] in /Users/wanghao/Work/common_divisor.rb  
       7      if(x < y)  
       8        return  gcd2(y , x)  
       9      elsif(y == 0)  
       10        return x  
       11      else  
    => 12        return gcd2(x - y , y)  
       13      end  
       14    end  
       15
       16    def gcd3(x ,y)  
    (rdb:1) info args  
    x = 1071  
    y = 462  
    (rdb:1) show line  
    line tracing is off  
    (rdb:1) info line  
    Line 12 of "/Users/wanghao/Work/common_divisor.rb"  
    (rdb:1) info stack  
    --> #0 CommonDivisor.gcd2(x#Fixnum,...)  
           at line /Users/wanghao/Work/common_divisor.rb:12  
        #1  at line /Users/wanghao/Work/common_divisor.rb:52  
    
  • info breakpoints # 顯示當(dāng)前所有斷點的狀態(tài)

    (rdb:1) info breakpoints
      Num Enb What
      1   y   at /Users/wanghao/Work/common_divisor.rb:51
      2   y   at /Users/wanghao/Work/common_divisor.rb:51
      3   y   at /Users/wanghao/Work/common_divisor.rb:3
    
  • info catch # 可以被捕獲的Exceptions,通過catch命令設(shè)定

  • info display # 程序結(jié)束時的輸出

  • info file # 關(guān)于讀取文件的內(nèi)容

  • info files # 關(guān)于讀取文件的時間和名字等信息

  • info global_variables # 所有全局變量

  • info instance_variables # 當(dāng)前frame的示例變量

  • info line # 當(dāng)前文件的當(dāng)前行有關(guān)信息

        [4, 13] in /Users/wanghao/Work/common_divisor.rb
        4    end
        5
        6    def gcd2(x , y)
        7      if(x < y)
        8        return  gcd2(y , x)
     => 9      elsif(y == 0)  
       10        return x
       11      else
       12        return gcd2(x - y , y)
       13      end  
       (rdb:1) info line
        Line 9 of "/Users/wanghao/Work/common_divisor.rb"
        (rdb:1) info stack
        --> #0 CommonDivisor.gcd2(x#Fixnum,...)
        at line /Users/wanghao/Work/common_divisor.rb:9
        #1  at line /Users/wanghao/Work/common_divisor.rb:52
    
  • info locals # 局部變量信息

    (rdb:1) info locals
        x = 1071
        y = 462
    
  • info program # 程序執(zhí)行狀態(tài)信息

  • info stack # 相關(guān)stack信息

    (rdb:1) info stack
    --> #0 CommonDivisor.gcd(x#Fixnum,...)
        at line /Users/wanghao/Work/common_divisor.rb:3
    #1 CommonDivisor.gcd(x#Fixnum,...)
        at line /Users/wanghao/Work/common_divisor.rb:3
    #2  at line /Users/wanghao/Work/common_divisor.rb:51
    
  • info thread # Thread相關(guān)信息

  • info threads # Thread相關(guān)信息
    (rdb:1) info threads
    + 1 #<Thread:0x007fc7ab0677a8 run> /Users/wanghao/Work/common_divisor.rb:3
    !2 #<Debugger::DebugThread:0x007fc7ab364b40 sleep>

  • info variables # 局部變量示例變量信息

    self = ...  
    x = 462  
    y = 147  
    
Set

設(shè)定ruby-debug的環(huán)境晰奖,Boolean變量可以設(shè)定為on off或者1 0 設(shè)定變量可以用show顯示

  • set annotate # 設(shè)定注釋等級

  • set args # 設(shè)定變量列表,用來傳遞給運行環(huán)境

  • set autoeval # 在不能直接輸出的表達(dá)式,進(jìn)行eval計算

      (rdb:1) set autoeval 0
       autoeval is off
      (rdb:1) fib2
      *** Unknown command: "fib2".  Try "help".
      (rdb:1) fib1
      *** Unknown command: "fib1".  Try "help".
      (rdb:1)
      (rdb:1) fib1=0\; fib2=1\; 5.times {|temp| temp=fib1\; fib1=fib2\; fib2 += temp }
      *** Unknown command: "fib1=0; fib2=1; 5.times {|temp| temp=fib1; fib1=fib2; fib2 += temp }".  Try "help".
      (rdb:1) set autoeval 1
      autoeval is on
      (rdb:1) fib1=0\; fib2=1\; 5.times {|temp| temp=fib1\; fib1=fib2\; fib2 += temp }
      5
      (rdb:1) fib1
      5
      (rdb:1) fib2
      8
    
  • set autolist # 在每個breakpoint時執(zhí)行l(wèi)ist

  • set autoirb # 任何時候只要stop則執(zhí)行irb

  • set autoreload # 當(dāng)代碼有修改的時候,從新load

  • set basename # 設(shè)定basename只顯示文件名

  • set callstyle # 設(shè)定顯示變量格式

  • set debuggertesting # 用于測試debugger自身

  • set forcestep # 保證'next/step'命令總是能向新行移動

  • set fullpath # 在frames中顯示文件的完整路徑名

  • set history # Generic command for setting command history parameters

  • set keep-frame-bindings # Save frame binding on each call

  • set linetrace+ # Set line execution tracing to show different lines

  • set linetrace # Set line execution tracing

  • set listsize # Set number of source lines to list by default

  • set trace # Display stack trace when 'eval' raises exception

  • set width # Number of characters the debugger thinks are in a line

Thread

用于線程操作

th[read] l[ist] # 列出所有的線程
th[read] stop <nnn> # 停止指定線程
th[read] resume <nnn> # 恢復(fù)指定線程
th[read] [sw[itch]] <nnn> # 切換執(zhí)行環(huán)境到指定線程
th[read] [cur[rent]] # 顯示當(dāng)前線程

Trace

tr[ace] (on|off) set trace mode of current thread
tr[ace] (on|off) all set trace mode of all threads

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末狂塘,一起剝皮案震驚了整個濱河市窄潭,隨后出現(xiàn)的幾起案子那伐,更是在濱河造成了極大的恐慌宠默,老刑警劉巖嘉抓,帶你破解...
    沈念sama閱讀 222,252評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件始绍,死亡現(xiàn)場離奇詭異访锻,居然都是意外死亡拔恰,警方通過查閱死者的電腦和手機因谎,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,886評論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來颜懊,“玉大人财岔,你說我怎么就攤上這事『拥” “怎么了匠璧?”我有些...
    開封第一講書人閱讀 168,814評論 0 361
  • 文/不壞的土叔 我叫張陵,是天一觀的道長咸这。 經(jīng)常有香客問我夷恍,道長,這世上最難降的妖魔是什么媳维? 我笑而不...
    開封第一講書人閱讀 59,869評論 1 299
  • 正文 為了忘掉前任酿雪,我火速辦了婚禮遏暴,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘指黎。我一直安慰自己朋凉,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 68,888評論 6 398
  • 文/花漫 我一把揭開白布醋安。 她就那樣靜靜地躺著杂彭,像睡著了一般。 火紅的嫁衣襯著肌膚如雪吓揪。 梳的紋絲不亂的頭發(fā)上盖灸,一...
    開封第一講書人閱讀 52,475評論 1 312
  • 那天,我揣著相機與錄音磺芭,去河邊找鬼赁炎。 笑死,一個胖子當(dāng)著我的面吹牛钾腺,可吹牛的內(nèi)容都是我干的徙垫。 我是一名探鬼主播,決...
    沈念sama閱讀 41,010評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼放棒,長吁一口氣:“原來是場噩夢啊……” “哼姻报!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起间螟,我...
    開封第一講書人閱讀 39,924評論 0 277
  • 序言:老撾萬榮一對情侶失蹤吴旋,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后厢破,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體荣瑟,經(jīng)...
    沈念sama閱讀 46,469評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,552評論 3 342
  • 正文 我和宋清朗相戀三年摩泪,在試婚紗的時候發(fā)現(xiàn)自己被綠了笆焰。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,680評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡见坑,死狀恐怖嚷掠,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情荞驴,我是刑警寧澤不皆,帶...
    沈念sama閱讀 36,362評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站熊楼,受9級特大地震影響霹娄,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,037評論 3 335
  • 文/蒙蒙 一项棠、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧挎峦,春花似錦香追、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,519評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至顿苇,卻和暖如春峭咒,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背纪岁。 一陣腳步聲響...
    開封第一講書人閱讀 33,621評論 1 274
  • 我被黑心中介騙來泰國打工凑队, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人幔翰。 一個月前我還...
    沈念sama閱讀 49,099評論 3 378
  • 正文 我出身青樓漩氨,卻偏偏與公主長得像,于是被迫代替她去往敵國和親遗增。 傳聞我的和親對象是個殘疾皇子叫惊,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,691評論 2 361

推薦閱讀更多精彩內(nèi)容

  • 說明本次redis集群安裝在rhel6.8 64位機器上,redis版本為3.2.8做修,redis的gem文件版本為...
    讀或?qū)?/span>閱讀 14,828評論 3 9
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理霍狰,服務(wù)發(fā)現(xiàn),斷路器饰及,智...
    卡卡羅2017閱讀 134,713評論 18 139
  • 背景 一年多以前我在知乎上答了有關(guān)LeetCode的問題, 分享了一些自己做題目的經(jīng)驗蔗坯。 張土汪:刷leetcod...
    土汪閱讀 12,748評論 0 33
  • 2017年2月25日,不知不覺17年的六分之一都快過了燎含。你年初信誓旦旦的新年計劃有沒有很好的執(zhí)行呢步悠?現(xiàn)在一想,其實...
    楊小偉的世界閱讀 341評論 1 4
  • 你知道我最擔(dān)心的是什么嗎 就是當(dāng)你和我吵架鬧矛盾的時候 別人趁虛而入來安慰你 甜言蜜語逗你開心 然后你自認(rèn)為遇見...
    是77呀閱讀 177評論 1 1