Игнасио правильно объяснил, что числа в квадратных скобках - это два файловых дескриптора, возвращаемых системным вызовом pipe()
. Первый - конец чтения канала, а второй - запись канала.
Трубы отнюдь не используются только оболочкой, хотя это, пожалуй, самое распространенное место для их использования. Тем не менее, у вас есть это задом наперед; оболочка может использовать только системные вызовы, предоставляемые системой, и, поскольку система предоставляет pipe()
, оболочка способна обеспечить трубопровод. Без поддержки o / s в форме системного вызова оболочка вряд ли предоставит нотацию канала. Все системные вызовы предназначены для того, чтобы программисты могли предоставлять услуги своим клиентам (конечным пользователям программного обеспечения, которое они пишут).