2010-03-05 50 views

回答

6

您可以從GDB中重定向輸出:

(gdb) run > somefile.txt 

將標準輸出重定向到somefile.txt。您還可以指定一個終端輸出發送到:

(gdb) tty /dev/ttyb 
5

是的,你會看到你的程序的所有輸出。

您可以通過在別處發送它來禁用此功能。例如:

(gdb) run > /dev/null 
+0

也忽略程序stderr:http://stackoverflow.com/a/35460141/895245 – 2016-02-17 14:58:39

2

如果你只是想看看該程序的輸出,你通過它的步驟,無需gdb的輸出,該腳本可以是有用的。

#!/bin/bash 
file=$1 
delay=1 #seconds 
lastTime=`stat --printf=%y "$file"` 

while [ 1 ] 
do 
    thisTime=`stat --printf=%y "$file"` 
    if [ "$thisTime" != "$lastTime" ] 
    then 
    clear 
    cat "$file" 
    fi 
    lastTime="$thisTime" 
    sleep $delay 
done 

lastTime = 「$ thisTime」 睡眠$延遲 做

+1

Wat? gdb在哪裏?如何使用這個?我只是想要問什麼,在gdb中啓動程序,使用gdb工作,但不想查看程序的stderr和stdout。 – osgx 2013-02-20 02:35:45

2

忽略輸出和錯誤

run &>/dev/null 

類似於Bash的語法。

在GDB 7.10上測試。