擅长:python、mysql、java
<p>像这样?在</p>
<pre><code>% ./challenge.py >stdout 2>stderr
% cat stdout
This is a real tty :)
standard output data
% cat stderr
standard error data
</code></pre>
<p>因为我有点作弊。;—)</p>
^{pr2}$
<p>像这样。。。在</p>
<pre><code>% gcc preload.c -shared -o preload.so -fPIC
</code></pre>
<p>我现在觉得脏兮兮的,但很有趣。:天</p>
<pre><code>% cat preload.c
#include <stdlib.h>
int isatty(int fd) {
if(fd == 2 || fd == 1) {
return 1;
}
return 0;
}
char* ttyname(int fd) {
static char* fake_name = "/dev/fake";
if(fd == 2 || fd == 1) {
return fake_name;
}
return NULL;
}
</code></pre>