1. 程式人生 > >Linux C語言刪除檔案

Linux C語言刪除檔案

        有時候需要先清空某個目錄裡的所有檔案,然後再放置新下載檔案。需要開啟目錄,並遍歷此目錄下的所有檔案,然後呼叫remove函式刪除檔案

int EmptyDir(char *destDir)
{

	DIR *dp;
	struct dirent *entry;
	struct stat statbuf;
	if ((dp = opendir(destDir)) == NULL)
	{
		fprintf(stderr, "cannot open directory: %s\n", destDir);
		return -1;
	}
	chdir (destDir);
	while ((entry = readdir(dp)) != NULL)
	{
		lstat(entry->d_name, &statbuf);
		if (S_ISREG(statbuf.st_mode))
		{
			remove(entry->d_name);
		}
	}

	return 0;
}


使用到的標頭檔案

#include <sys/stat.h>

相關推薦

Linux C語言刪除檔案

        有時候需要先清空某個目錄裡的所有檔案,然後再放置新下載檔案。需要開啟目錄,並遍歷此目錄下的所有檔案,然後呼叫remove函式刪除檔案 int EmptyDir(char *destDir) { DIR *dp; struct dirent *entry

c語言刪除檔案的指定行,更新檔案

有時候我們需要刪除檔案的某一行,來更新檔案,在這我個人擴充套件了一個函式,以刪除指定條件的行。 1 static void UpdateHistoryFile(void) 2 { 3 FILE *fin,*fout; 4 int counter = 1; 5 STes

linux C語言實現檔案鎖之flock

一:flock函式特點: 1.flock只能加全域性鎖。 2.當一個程序用flock給一個檔案加鎖時,用另一個程序再給這個檔案加鎖,它會阻塞或者也可以返回加鎖失敗(可以自己設定)。 3.當給一個檔案加fcntl的獨佔鎖後,再給這個檔案加flock的獨佔鎖,其會進入阻塞狀態。

linux下使用c語言刪除指定目錄下所有檔案

http://blog.csdn.net/gitar520/article/details/7582727 我一直以為使用c提供的方法可以跨越平臺,但無疑我是錯的,上次寫的刪除檔案所使用的兩個api——_findfirst和_findnext無法在gcc下使用,但linux

軟體素材---linux C語言linux下獲取可執行檔案的絕對路徑--getcwd函式

      //標頭檔案:#include <unistd.h>     //定義函式:char * getcwd(char * buf, size_t size);    

軟體素材---linux C語言:向檔案末尾進行追加資料

void AppendDataToFile(char* filePath, char* msg) { // 以附加方式開啟可讀/寫的檔案, 如果沒有此檔案則會進行建立,然後以附加方式開啟可讀/寫的檔案 FILE* fp = fopen(filePath, "a+");

linux C語言編譯後執行檔案從命令輸入引數

linux使用gcc編譯C檔案後,會生成一個執行檔案,而我們執行這個檔案的時候想要使用輸入的引數怎麼辦呢,其實很簡單,我們在main函式中加入形參即可,如下圖 int main(int argc,cha

linux 平臺下C語言建立檔案

#include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <sys

linux C語言遍歷資料夾所有檔案

#include <sys/types.h> #include <sys/stat.h> #include <dirent.h> #include <string.h> #include <stdio.h> voi

LINUX C語言檔案的讀寫(非二進位制)

#include<stdio.h> #include<stdlib.h> #include<unistd.h> #include<fcntl.h> #include<string.h> int main() { i

linux C語言處理正則表達式

man cte 得到 rsquo like pre 首地址 添加 有效 Linux下C語言處理正則表達式——regex.h 具體函數介紹 編譯正則表達式函數 int regcomp(regex_t *preg, const char *re

Linux C語言頭文件搜索路徑

type 是把 一個 logs 規則 /usr 路徑 bbs 部分 本文介紹在linux中頭文件的搜索路徑,也就是說你通過include指定的頭文件,linux下的gcc編譯器它是怎麽找到它的呢。在此之前,先了解一個基本概念。 頭文件是一種文本文件,使用文本編輯器

(排序演算法)linux c語言實現選擇排序演算法(氣泡排序的略微改進版)

 快速排序演算法和氣泡排序演算法是差不多的,都是要兩層迴圈,外迴圈是要比較的個數,其實就是元素的個數,內迴圈就是外層那個標記和其他的比較大小, 氣泡排序是相鄰的兩個,兩兩比較,最後交換出一個最大或者最小值, 快速排序是在氣泡排序的基礎上,找出那個最小的或者最大的,但是不是直接交換,

(排序演算法)linux c語言實現快速排序(氣泡排序的改進版)

 快速排序演算法是對氣泡排序演算法的一種改進,氣泡排序是對單個元素的升降,快速排序是對所有元素的升降,不過這個升降是取了某一個標準的前提下,在本文程式碼中,就以a[i],其實就是以最左邊的元素為參考,比較交換之後,將這個參考元素放到分界的地方,即i的位置。 程式碼如下,裡面有比較詳細的

(排序演算法)linux c語言實現二分插入排序演算法(簡化版本的插入排序演算法)

 二分插入演算法是在已經排序好的序列裡插入一個元素,是穩定的演算法,關鍵詞是折中。 比如說我要在12345678910裡插入一個3,那麼我先看看中間的數比3大,還是比3小,要是比3大,我就去後一半,如果是比3小,我就去前一半,現在進入某個一半後,再做如此操作,最後將其他的元素依次往後挪

C語言(四 檔案操作、遞迴)

檔案讀寫 我們用**fopen()**來新建一個檔案或開啟一個已有的檔案. 函式原型為File *fopen(const char *filename , const char *mode) filename是檔名,mode代表訪問方式。 mode

linux C 讀取目錄檔案並統計檔案

#include <stdio.h> #include <stdlib.h> #include <dirent.h> #include <errno.h> #include <string.h> #define MAX 1024

BMP轉成C語言陣列檔案工具(用image2lcd代替bmp2h exe)

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

Linux C語言教程(一) 資料型別

一、基礎型別 1.1 整型 整型常量的第一個字元是數字0,該常量會被視作八進位制,千萬不要為了格式對齊,將十進位制整型寫成八進位制。 1.1.2 列舉 1.2 浮點型 1.3 指標 1.3.1 字元指標 C語言是靜態弱型別語言,型別在編譯時需要確定,對於st

Linux - rm -rf 刪除檔案指定移動檔案位置 (李作強)

rm -rf 刪除檔案指定移動檔案位置。 建立回收站機制,它並不真正執行刪除操作,而是將檔案移動到一個特定目錄,可以設定定時清除回收站,或者在回收站裡面的檔案大小達到一定容量時(或者用時間做判斷)執行刪除操作以騰出空間。可以寫個shell指令碼替換rm命令,或者在需要刪除檔案的時候使用mv命