Хорошо. Если бы я хотел перенаправить вывод программы в файл, я бы сделал что-то вроде этого
prog > file
Если бы я хотел перенаправить как stdout, так и stderr в этот файл, то я бы сделал
prog > file 2>&1
Это все хорошо, если вы хотите, чтобы вывод шел в файл. Но что, если вы хотите, чтобы вывод шел в файл и все же шел в stdout / stderr? Таким образом, вывод сохраняется в файле, но вы все равно можете увидеть его на консоли во время работы программы. Есть ли способ сделать это? И если да, то как?
stdoutэто дескриптор файла 1 иfoo > some_fileозначает, что дескриптор файла,some_fileдоступный только для записи, это стандартный вывод foo. стандартный вывод всегда идет в стандартный вывод.