2009-08-11 2 views
107

मैं gdb में एक बार में दो आदेश पर अमल करने के लिए कोशिश कर रहा हूँ:जीडीबी में एकाधिक आदेश कुछ प्रकार के डिलीमीटर ';' से अलग होते हैं?

finish; next 

मैं उपयोग करने की कोशिश ';' आदेशों को अलग करने के लिए लेकिन जीडीबी ने मुझे एक साथ दोनों करने की अनुमति नहीं दी।

क्या जीडीबी में कई कमांड करना संभव है जैसे ';' से अलग बैश कमांड सीमांकक?

उत्तर

143

मुझे विश्वास नहीं है (लेकिन मैं गलत हो सकता हूं)। आप कुछ इस तरह कर सकते हैं:

 
(gdb) define fn 
> finish 
> next 
> end 

और फिर बस टाइप करें:

 
(gdb) fn 

साथ ही आप अपने ~/.gdbinit फ़ाइल में इस डाल सकते हैं तो यह हमेशा उपलब्ध है।

+1

खराब विधि जब जीडीबी केवल आवेदक के स्टैकट्रैक को मुद्रित करने के लिए बुलाया जाता है: 'execlp ("gdb", "gdb", "-batch", "-n", "-ex", "bt full", .. । 'और मैं पेजिनेशन बंद नहीं कर सकता। –

+1

जीवन बदल रहा है !! –

+1

और यदि आप भूल जाते हैं कि आपने फ़ंक्शन को कैसे परिभाषित किया है, तो आप इसके स्रोत को देखने के लिए' उपयोगकर्ता दिखाएं 'का उपयोग कर सकते हैं, उदाहरण के लिए' उपयोगकर्ता दिखाएं 'दिखाएं। – ntc2

8

जीडीबी में ऐसा कोई आदेश विभाजक चरित्र नहीं है। मैं संक्षेप में देखा मामले में यह एक जोड़ने के लिए आसान होगा, लेकिन दुर्भाग्य से कोई ....

29

आप कमांड लाइन से gdb चला रहे हैं आप एक से अधिक आदेशों की तरह -ex पैरामीटर के साथ पारित कर सकते हैं:

$ gdb ./prog -ex 'b srcfile.c:90' -ex 'b somefunc' -ex 'r -p arg1 -q arg2' 

यह डिस्प्ले और अन्य कमांड के साथ मिलकर जीडीबी कम बोझिल चलाता है।

संबंधित मुद्दे