Привет, я пишу оболочку linux на C. Я хочу перенаправить вывод как в файл, так и в терминал, и я обнаружил, что путь - это путь.Я зашел на man-страницу linux по tee и обнаружил, что tee можно использовать как вызов функции для вызова из C-программы.Итак, я написал
int size =tee(pipeends[1], 1,INT_MAX,SPLICE_F_NONBLOCK);
Но это просто не работает.он говорит
неявное объявление функции 'tee' [-Wimplicit-function-объявление] size = tee (pipeends [1], 1, INT_MAX, SPLICE_F_NONBLOCK);
Я много искал в Интернете, и все, что он возвращает, это как использовать команду tee в терминале, которую я знаю, используя tee.Но я хочу закодировать его в программе и не позволять пользователю вводить его явно.Я добавил заголовочные файлы:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <time.h>
#include <sys/stat.h>
#include< fcntl.h>
как часть моего кода оболочки linux.Я не знаю, использует ли tee некоторые другие заголовочные файлы или нет, но я не знаю.