调试程序(gdb)的块输出
答
您可以从GDB中重定向输出:
(gdb) run > somefile.txt
将标准输出重定向到somefile.txt。您还可以指定一个终端输出发送到:
(gdb) tty /dev/ttyb
答
是的,你会看到你的程序的所有输出。
您可以通过在别处发送它来禁用此功能。例如:
(gdb) run > /dev/null
答
如果你只是想看看该程序的输出,你通过它的步骤,无需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
答
忽略输出和错误
run &>/dev/null
类似于Bash的语法。
在GDB 7.10上测试。
也忽略程序stderr:http://stackoverflow.com/a/35460141/895245 – 2016-02-17 14:58:39