Chương trình giả định này sẽ ghi vào số mô tả tập tin bạn đã chỉ định. xem xét chương trình hello world sau đây:
#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) ;
}
biên dịch nó
me@mybox:~/tmp7$ make hw
cc hw.c -o hw
bây giờ chạy đơn giản
me@mybox:~/tmp7$ ./hw
hello world
-1 octet dans 5
không có tập tin nào cho 5, vì vậy không có byte nào được viết
thử tiếp theo:
me@mybox:~/tmp7$ ./hw 5> u
hello world
14 octet dans 5
me@mybox:~/tmp7$ cat u
Bonjour Monde
Tôi quản lý để có được một đầu ra trong khi chỉ định một tệp và một mô tả tệp (ví dụ 5>u
).
Trong thực tế, trừ khi bạn đã viết chương trình hài hước như trên, bạn không có khả năng thu thập dữ liệu bằng cách sử dụng 5>foo
.
trong shell script, cấu trúc sử dụng <() hữu ích hơn:
diff <( cmd -par 1 ) <(cmd -par 2)