红联Linux门户
Linux帮助

Linux/Unix下读取指定目录下的所有文件名

发布时间:2014-12-18 15:51:43来源:linux网站作者:ACb0y

调用系统函数opendir()和readdir来实现遍历Linux/Unix下的某个指定目录下的所有文件,并输出文件名。


实现代码如下:

/*
Author: ACb0y
FileName: main.cpp
Create Time: 2011年8月1日0:41:18
Version: V1.0
*/ 
#include <iostream>  
#include "apue.h"  
#include <dirent.h>  
using namespace std; 
 
int main(int argc, char * argv[]) 

DIR *dp; 
struct dirent *dirp; 
if (argc != 2)  

err_quit("Usage: ls directory_name"); 

 
//打开指定的目录  
if ((dp = opendir(argv[1])) == NULL) 

err_sys("can't open %s", argv[1]); 

 
//遍历目录  
while ((dirp = readdir(dp)) != NULL) 

printf("%s\n", dirp->d_name); 

 
//关闭目录  
closedir(dp); 
return 0; 
}