Seharusnya program ini akan menulis ke file nomor deskriptor yang Anda tentukan. pertimbangkan program hello world berikut:
#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) ;
}
kompilasi itu
me@mybox:~/tmp7$ make hw
cc hw.c -o hw
sekarang jalankan sederhana
me@mybox:~/tmp7$ ./hw
hello world
-1 octet dans 5
tidak ada file untuk 5, jadi tidak ada byte yang menulis.
percobaan berikutnya:
me@mybox:~/tmp7$ ./hw 5> u
hello world
14 octet dans 5
me@mybox:~/tmp7$ cat u
Bonjour Monde
Saya berhasil mendapatkan output saat menentukan file dan deskriptor file (misalnya 5>u
).
Dalam praktiknya, kecuali jika Anda telah menulis program lucu seperti di atas, Anda tidak akan mengumpulkan data menggunakan 5>foo
.
dalam skrip shell, konstruk menggunakan <() lebih bermanfaat:
diff <( cmd -par 1 ) <(cmd -par 2)