创建一个空洞文件

一、源代码

  1 #include "apue.h"
  2 #include <fcntl.h>
  3
  4 int main()
  5 {
  6         char buf1[] = "abcdefj";
  7         char buf2[] = "ABCDEFJ";
  8         int fd;
  9         if ( fd = creat ( "file.hole", FILE_MODE ) < 0 )
 10                 err_sys("cannot create file");
 11         if(write(fd,buf1,10) != 10 )
 12                 err_sys("writei buf1 error");
 13         if ( lseek(fd, 16384, SEEK_SET) == -1 )
 14                 err_sys("lseek error");
 15         if ( write(fd, buf2, 10) != 10 )
 16                 err_sys("write buf2 error");
 17
 18         exit(0);
 19 }
 20

二、运行结果

<bldc:/home/tingbinz/apue.2e/include/1>R*_*G:./3_2
<bldc:/home/tingbinz/apue.2e/include/1>R*_*G:ls -l file.hole
-rw-r--r-- 1 tingbinz tingbinz 16394 Sep  6 03:36 file.hole
<bldc:/home/tingbinz/apue.2e/include/1>R*_*G:cat file.hole
abcdefjABCDEFJab<bldc:/home/tingbinz/apue.2e/include/1>R*_*G:od file.hole
0000000 060542 061544 062546 065000 000000 000000 000000 000000
0000020 000000 000000 000000 000000 000000 000000 000000 000000
*
0040000 040502 041504 042506 045000 060542
0040012
<bldc:/home/tingbinz/apue.2e/include/1>R*_*G:od -c file.hole
0000000   a   b   c   d   e   f   j  \0  \0  \0  \0  \0  \0  \0  \0  \0
0000020  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0  \0
*
0040000   A   B   C   D   E   F   J  \0   a   b
0040012
<bldc:/home/tingbinz/apue.2e/include/1>R*_*G:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值