就是利用c语言实现:rm -rf的功能
c语言的功能很强大,但接口并不丰富,很多功能需要自己封装。
删除文件就是一方面,c语言的接口,直接用remove的话,只能删除文件夹下无文件或文件夹的子目录,但是,编程当中学用到这些功能,删除一个文件夹下的东西,或者,不管是文件,还是文件夹,只要是指定了,就删除了。
实现代码如下:
root@mkx:~/workspace/learn# cat removeDirAndFile.c
#include <stdio.h>
//#include <io.h>
#include <sys/stat.h>
#include <dirent.h>
#include <string.h>
#include <time.h>
#include <stdlib.h>
#include <unistd.h>
#define _MAXDIR_ 256
char dirname[_MAXDIR_];
//*判断是否是文件
int isFile(char *fileName)
{
printf("fileName=%s\r\n", fileName);
struct stat buf;
stat(fileName, &buf);
if(S_ISREG(buf.st_mode)){
printf("is file\r\n");
return 1;
}
return 0;
}
void del_dir(char *path)
{
DIR* dp = NULL;
DIR* dpin = NULL;
char *pathname = (char*)mall
|