我有一个程序,想要在gdb中进行调试。
我能看到常规的程序输出吗?如何启用/禁用此输出,仅保留gdb消息。
您可以在gdb内部重定向输出:
(gdb) run > somefile.txt
将标准输出重定向到 somefile.txt。您还可以指定终端以发送输出:
(gdb) tty /dev/ttyb
是的,您将看到程序的所有输出。
您可以通过将其发送至其他地方来禁用此功能。例如:
(gdb) run > /dev/null
忽略标准输出和标准错误
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" 等待 $delay 秒 完成