Нам нужен STDERR (файловый дескриптор 2), чтобы отделить выходной поток (STDOUT, файловый дескриптор 1) от потока ошибок.
Без разделения нельзя отличить правильные выходные данные от ошибок.
Как вы можете видеть в вашем случае, оба потока подключены к терминалу, и вы можете легко различать их или работать с ними (dup(2)
и др.) с помощью простых операций с файловыми дескрипторами из пользовательское пространство.
Просто пример отправки STDOUT в файл и STDERR в другой файл:
my_command >stdout.log 2>stderr.log
Вместо этого вы можете использовать Подсистему Windows для Linux ; это решает ряд проблем Cygwin.
Si no está satisfecho con Cygwin, puede probar uno de los siguientes. Estos se basan más o menos en cygwin, pero el comportamiento y las características son un poco diferentes:
MSYS2. "En esencia, es una reescritura independiente de MSYS, basada en Cygwin moderno (capa de compatibilidad POSIX )y MinGW -w64 con el objetivo de una mejor interoperabilidad con el software nativo de Windows. Proporciona un bash shell, Autotools, sistemas de control de revisión y similares para construir aplicaciones nativas de Windows utilizando cadenas de herramientas MinGW -w64".-A diferencia de cygwin, esto se ha incorporado -en el administrador de paquetes pacman (como Arch Linux)
Git bash para Windows-Admite comandos bastante básicos, pero podría ser suficiente para ti.
MobaXterm-básicamente una interfaz para Cygwin, pero tiene su propia administrador de paquetes y está bastante bien integrado con el shell de Windows. Viene con servidor X, SSH con pestañas y otras herramientas. La versión completa es de pago,pero puedes hacer bastantes cosas con la versión básica.