=begin
6の秘密はstraceが教えてくれている
dup(4) = 5
lseek(4, 0, SEEK_CUR) = 0
lseek(5, 0, SEEK_SET) = 0
lseek(4, 0, SEEK_CUR) = 0
write(1, "0\n", 20
) = 2
read(5, "1\n2\n3\n", 8192) = 6
write(1, ""1\n"\n", 6"1\n"
) = 6
lseek(4, 0, SEEK_CUR) = 6
write(1, "6\n", 26
) = 2
lseek(5, -4, SEEK_CUR) = 2
lseek(5, 0, SEEK_CUR) = 2
write(1, "2\n", 22
)
read(f2, buf, 8192)でバッファリング読み込みしたあと、オフセットを戻すのを忘れて
lseek(f1, 0, SEEK_CUR) でposを読み込むのでファイル終端のposが得られている。
=end