例如,如何使用strace包括输出重定向(>):>
strace echo Hello > /tmp/file
产生的输出仅考虑了
echo hello
,而不考虑> /tmp/file
我也尝试过:
alice@vm:~$ strace -e trace=open,close,read,write echo Hello > /tmp/file close(3) = 0 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\34\2\0\0\0\0\0"..., 832) = 832 close(3) = 0 close(3) = 0 write(1, "Hello\n", 6) = 6 close(1) = 0 close(2) = 0 +++ exited with 0 +++
它显示它正在向stdout(文件描述符1)写入,但是没有地方表明它正在重定向到/ tmp / file。
如何使用strace包括输出重定向(>),例如:strace echo您好> / tmp / file产生的输出仅考虑了echo hello,但没有考虑> / tmp / file我也有...] >
每个系统调用的名称,其参数及其返回值都会在标准错误或使用-o选项指定的文件上打印。