यह माना गया प्रोग्राम आपके द्वारा निर्दिष्ट किए गए डिस्क्रिप्टर नंबर को दर्ज करने के लिए लिखेगा। निम्नलिखित हैलो विश्व कार्यक्रम पर विचार करें:
#include <stdio.h>
main()
{
ssize_t i = 0 ;
printf ("hello world\n") ;
i = write( 5 , "Bonjour Monde\n", 14 ) ;
printf ("%d octet dans 5\n", (int) i) ;
}
संकलित करें
me@mybox:~/tmp7$ make hw
cc hw.c -o hw
अब एक साधारण रन
me@mybox:~/tmp7$ ./hw
hello world
-1 octet dans 5
5 के लिए कोई फाइल नहीं, इसलिए कोई बाइट नहीं लिखी।
अगला प्रयास:
me@mybox:~/tmp7$ ./hw 5> u
hello world
14 octet dans 5
me@mybox:~/tmp7$ cat u
Bonjour Monde
मैं एक फ़ाइल और फ़ाइल डिस्क्रिप्टर (जैसे 5>u
) निर्दिष्ट करते हुए एक आउटपुट प्राप्त करने का प्रबंधन करता हूं ।
व्यवहार में, जब तक कि आपने ऊपर इस तरह के मज़ेदार कार्यक्रम नहीं लिखे हैं, तब तक आप डेटा का उपयोग करने की संभावना नहीं रखते हैं 5>foo
।
शेल स्क्रिप्ट में, <() का उपयोग करके निर्माण अधिक उपयोगी है:
diff <( cmd -par 1 ) <(cmd -par 2)