В операционной системе UNIX от оболочки: http://www.askdavetaylor.com/how_do_i_reredirect_stdin_in_a_unix_or_linux_shell_script.html
Для получения более общей информации: http://www.mathinfo.u-picardie.fr/asch/f/MeCS/courseware/users/help/general/unix/redirection.html
Для окон, с сокетом: http://www.unix.com/high-level-programming/79439-redirect-stdin-out-sockets.html
Вот объяснение на UNIX, для перенаправления: http://www.rtems.com/ml/rtems-users/2007/october/msg00063.html
Теперь этот будет перенаправлять только что-либо, идущее в stdin/out/err, которое поступает из программы.
Мне нравится тот факт, что последнее звено также восстанавливает STDIN/из/ERR перед выходом из программы. Если вы внесете какие-либо изменения, как это, восстановление - это хорошая вещь, которую следует помнить.
Существует несколько способов сделать это, вы можете использовать трубы, и, например, труба идет в сокет или файл, поэтому stdin/out будет перенаправлен на канал. Это хорошо, если вы хотите переключиться туда, куда идет конечный пункт назначения, или если вы хотите сделать некоторую обработку на этом пути, так как каждый канал может выполнить некоторую обработку.
Если я использую: NC -e «программа арг» она не работает. Все вокруг? –
Используйте 'nc -c"/full/path/to/program args "'. – liori
fork() не требуется. –