Linux / Open目录作为文件
发布时间:2020-12-14 01:19:11 所属栏目:Linux 来源:网络整理
导读:我一直在阅读Brian Kernighan和Dennis Ritchie – C编程语言,第8.6章是关于UNIX OS下的目录列表.他们说一切甚至目录都是一个文件.这意味着我应该能够将目录作为文件打开?我已经尝试使用stdio函数,但它没有用.现在,我正在尝试使用UNIX系统功能.当然,我没有使
我一直在阅读Brian Kernighan和Dennis Ritchie – C编程语言,第8.6章是关于UNIX OS下的目录列表.他们说一切甚至目录都是一个文件.这意味着我应该能够将目录作为文件打开?我已经尝试使用stdio函数,但它没有用.现在,我正在尝试使用UNIX系统功能.当然,我没有使用UNIX,我正在使用Ubuntu
linux.这是我的代码:
#include <syscall.h> #include <fcntl.h> int main(int argn,char* argv[]) { int fd; if (argn!=1) fd=open(argv[1],O_RDONLY,0); else fd=open(".",0); if (fd==-1) return -1; char buf[1024]; int n; while ((n=read(fd,buf,1024))>0) write(1,n); close (fd); return 0; } 即使当argn为1(无参数)并且我正在尝试读取当前目录时,这也不会写入任何内容. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |