Hello! В сообщении от Wednesday 24 September 2008 16:04:29 Dmitry E. Oboukhov написал(а): > AC>>> set cat [open "|cat" r+] > AC>>> set io [ open "|/usr/bin/tidy -q --show-body-only 1 -f /dev/null <@ > $cat" r] AC>> |/usr/bin/tidy -q --show-body-only 1 -f /dev/null <@ $cat > AC>> - это ж голимый шелл, о чем и речь :) > > AC> А если прочесть-таки ман? > если у тебя какие-то шелловские конструкции выполняются каким-то > урезанным аналогом шелла то чем это от шелла то отличается? тем что > урезано? или тем что в язык встроено? > оно ж ведь как было шеллом так им и осталось :)
Это работа с файловыми дескрипторами, причем в один канал передается содержимое из другого. Вот кусок документации: There are many I/O redirection commands. The main subset of these commands is: | Pipes the standard output of the command preceding the pipe symbol into the standard input of the command following the pipe symbol. < fileName The first program in the pipe will read input from fileName. <@ fileID The first program in the pipe will read input from the Tcl descriptor fileID. fileID is the value returned from an open ... "r" command. В шелле совершенно другая идеология. Попробуйте-ка в шелле выставить параметры буферизации одного из пайпов в цепочке или добавить функцию, которая между указанными двумя пайпами в цепочке перехватит поток данных и выполнит над ними какое-то преобразование (фильтр). Best regards, Alexey. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

