Об использовании операторов перенаправления команд

 

 Наткнулся я на данный момент. Нашёл тут информацию по данному вопросу:

 http://www.windowsfaq.ru/content/view/260/57/

Там используется пример, который интересно разобрать по полочкам, ибо я не втыкаю логику. Вот код:

findfile file.txt>search.txt 2<&1

 У них сказано, что этот код вот что реализует:

Для того чтобы найти файл File.txt и перенаправить дескриптор 1 (STDOUT) и дескриптор 2 (STDERR) в Search.txt 

 Но я вижу так:

1. Ищется файл file.txt

2. Записываются данные найденного файла в файл search.txt 

3. Почему-то в самом конце строки 2<&1 , хотя логичнее было бы по-моему это указать сразу, что дальнейшие действия были уже последовательными.

 Подскажите, кто сталкивался как это понять? Я привык что код у меня работает последовательно, строка за строкой, функция за функцией.. а тут.. вроде как сразу всё логично, а в итоге не совсем понятно.

 
это писано на МКЛ ?
 
Нет. Вообще это командная строка винды. Но думаю, это при написании Dll пригодится. Читаю книгу, попался пример с операторами перенаправления команд.
 
hoz:
Нет. Вообще это командная строка винды. Но думаю, это при написании Dll пригодится. Читаю книгу, попался пример с операторами перенаправления команд.


Не вызывайте стандартные функции винды из своей программы, поскольку:

1. ЭТО БЕЗУМИЕ!!!, т.к. средствами языка это решить сильно проще

2. есть сильные проблемы с передачей параметров и получении результата в связи с несинхронизированностью выполнения потоков

3. есть проблемы с получением ошибок  при выполнении куска кода в виндовой функции.

 

 и прочее...

 
hoz:

 Наткнулся я на данный момент. Нашёл тут информацию по данному вопросу:

 http://www.windowsfaq.ru/content/view/260/57/

Там используется пример, который интересно разобрать по полочкам, ибо я не втыкаю логику. Вот код:

 У них сказано, что этот код вот что реализует:

 Но я вижу так:

1. Ищется файл file.txt

2. Записываются данные найденного файла в файл search.txt 

3. Почему-то в самом конце строки 2<&1 , хотя логичнее было бы по-моему это указать сразу, что дальнейшие действия были уже последовательными.

 Подскажите, кто сталкивался как это понять? Я привык что код у меня работает последовательно, строка за строкой, функция за функцией.. а тут.. вроде как сразу всё логично, а в итоге не совсем понятно.

Это перенаправление вывода MS DOS. Аналогично dir>[имя файла] испокон веков. Правее, как я понимаю, приделан недавний наворот. 
Причина обращения: