制作和“>”重定向器在gnome-terminal中没有按预期工作

时间:2015-06-02 18:57:07

标签: shell cmake makefile gnome-terminal

对于我在大学学习的操作系统课程,我需要在大型教学操作系统上工作。我正在处理的代码已经提供了一堆makefile,并使用cmakemake进行编译。

由于代码中有很多警告(我想要删除)并且构建树很大,我正在尝试将构建日志重定向到make > output.txt的文件。

但是,这只会将make的输出写入文件:

output.txt看起来像这样:

[ 63%] Building CXX object common/source/kernel/CMakeFiles/common_kernel.dir/Syscall.cpp.o
[ 63%] Building CXX object common/source/kernel/CMakeFiles/common_kernel.dir/Thread.cpp.o
[ 64%] Building CXX object common/source/kernel/CMakeFiles/common_kernel.dir/TimeManager.cpp.o
[ 64%] Building CXX object common/source/kernel/CMakeFiles/common_kernel.dir/UserProcess.cpp.o
[ 65%] Building CXX object common/source/kernel/CMakeFiles/common_kernel.dir/UserThread.cpp.o
Linking CXX static library ../../../lib/libcommon_kernel.a

gcc或g ++的输出仍然会打印到shell中,如下所示:

In file included from /home/user/Desktop/bs2015G07/userspace/tests/x7_cancellation_points.c:4:0:
/home/user/Desktop/bs2015G07/userspace/tests/../libc/include/stdlib.h:90:22: warning: ‘start’ defined but not used [-Wunused-variable]
 static mem_block_t * start;
                      ^
/home/user/Desktop/bs2015G07/userspace/tests/x7_cancellation_points.c: In function ‘function’:
/home/user/Desktop/bs2015G07/userspace/tests/x7_cancellation_points.c:14:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^

有没有办法将所有输出重定向到一个文件? 或者有没有办法以某种方式扩大shell文本缓冲区,所以我可以查看shell上的所有输出?

1 个答案:

答案 0 :(得分:2)

这会将所有输出(stderr和stdout)写入文件:

command > file 2>&1
相关问题