Предполагая, что под «записью» вы подразумеваете, что хотите записать его в файл, тогда да, это довольно просто. В течение многих лет в Unix была утилита tee
, которая позволяла бы вам делать что-то вроде:
gateway_listener | tee record_file
Если вы работаете в системе, которая не предоставляет tee
по умолчанию, ее будет довольно легко найти или скомпилировать:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char **argv) {
FILE *outfile;
int c;
if ( argc < 2) {
fprintf(stderr, "Usage: tee <out_file>\n");
return EXIT_FAILURE;
}
if (NULL == (outfile = fopen(argv[1], "w"))) {
fprintf(stderr, "Unable to open '%s'\n", argv[1]);
return EXIT_FAILURE;
}
while (EOF != (c=getchar())) {
putc(c, outfile);
putchar(c);
}
fclose(outfile);
return 0;
}