c 刪除檔案中指定的部分內容 (轉)
#include
#include
#include
void search_file(char* dir);
void clear_file(char* FileName,char* Filename1);
DIR *dp;
struct dirent *dirp;
char* file;
FILE * fp=NULL;
char n_filename[50];
char o_filename[50];
char buf[80];
int pid;
int status;
char* logdir;
char* logbak;
char *optarg;
int main(char *argv[]){
logdir="/usr/local/tmp_file/";
logbak="/usr/local/tmp_file2/";
printf("Begin now !n");
search_file(logdir);
}
void search_file(char* dir){
if ((dp = opendir(dir)) == NULL)
{
printf("directory %s is not found!n",logdir);
}
/* print err */
while ((dirp = readdir(dp)) != NULL){
optarg = dirp->d_name;
/*printf ("%s n" , optarg);*/
if ((strstr(optarg,".htm")!=NULL) |
(strstr(optarg,".vbs")!=NULL) |
(strstr(optarg,".")!=NULL) ) {
n_filename[0]=';
o_filename[0]=';
strcat(o_filename,logdir);
strcat(o_filename,"/");
strcat(o_filename,optarg);
strcat(n_filename,logbak);
strcat(n_filename,optarg);
printf("%s n", o_filename);
clear_file(o_filename,n_filename);
/* status = rename(o_filename,n_filename); */
printf("%s %s rename file status : %dn", o_filename, n_filename, status );
}
} /* for every log file */
closedir(dp);
sleep(20);
}
void clear_file(char* FileName,char* FileName1){
int i;
FILE *myFile=NULL,*fw=NULL;
char* line;
int count=0;
myFile = fopen(FileName,"r"); /* open file */
fw = fopen(FileName1,"w");
if(myFile == NULL)
{
printf("No config file myFile,Please config your system first!n");
exit(1);
}
while( fgets(line,1024,myFile)!=NULL ) {
/* printf("line is : %s" , line); */
if ( strstr(line," count=1;
}else if ( strstr(line," count=0;
}else if (count==0){
fputs(line,fw);
}
}
/* read file by line */
fclose(myFile);
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-989374/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 刪除指定資料夾的檔案內容的sh指令碼指令碼
- 刪除指定日期內的過期檔案
- 刪除檔案中包含指定字串的行字串
- Git刪除指定檔案Git
- javascript刪除具有指定文字內容的li元素JavaScript
- windows 下 檔案內容清理且不刪除-拾億Windows
- 探索vim之如何快速刪除檔案內容
- Linux下批量刪除空檔案或者刪除指定大小的檔案Linux
- 【轉載】windows下刪除指定日期前的檔案Windows
- 刪除指定目錄下指定字尾的檔案
- git 刪除歷史指定檔案Git
- whatsns模板檔案中如何呼叫指定類目下的內容
- liunx批量刪除指定字尾的檔案
- Git刪除暫存區的指定檔案Git
- git檢視指定提交檔案的內容Git
- 替換文字檔案中指定的內容
- Python如何刪除csv中的內容Python
- 在指定的檔案過濾想要的內容
- git將指定內容寫入檔案Git
- Linux批量刪除指定型別的檔案Linux型別
- Linux刪除指定時間之前的檔案Linux
- Linux 批量刪除指定字尾的檔案Linux
- Linux刪除指定字尾名的檔案Linux
- 用C++程式刪除文字檔案中以“//”開頭的行(轉)C++
- 多執行緒-定時刪除指定的帶內容目錄執行緒
- JavaScript刪除字串中的非數字內容JavaScript字串
- linux 批量刪除指定型別檔案Linux型別
- Linux 命令列刪除指定副檔名檔案Linux命令列
- Linux刪除指定字尾名檔案的命令Linux
- linux下刪除指定日期前的檔案Linux
- C#分割檔案內容C#
- 批量刪除檔案中的^M
- 刪除Repository中的檔案
- 刪除檔案中的數字
- 【OS_Linux】刪除日誌檔案中某個時間節點之前的內容Linux
- dump 轉儲檔案內容
- jQuery load()方法載入指定檔案內容jQuery
- 選擇性地檢視檔案的方法 head tail sed 檢視檔案部分內容 (轉)AI