導航:首頁 > 文件類型 > linuxc判斷文件是否存在

linuxc判斷文件是否存在

發布時間:2025-01-25 03:56:40

Ⅰ C語言有什麼函數可以判斷某進程是否存在

C語言沒有庫函數可以做到這一點。但是在linux下,有一些替代方案。

見下:

基本思路是先定義一個FILE指針,用該指針接收popen()執行ps指令的返回值,再從指針中讀取數據到緩存,根據得到的數據判斷進程是否存在,怎麼操作要看ps的參數了。

#include<unistd.h>
#include<sys/types.h>
#include<sys/wait.h>
#include<stdio.h>
#include<stdlib.h>
#include<fcntl.h>
#include<limits.h>

#defineBUFSZPIPE_BUF

voiderr_quit(char*msg)
{
perror(msg);
exit(EXIT_FAILURE);
}

intmain(intargc,char*argv[])
{
FILE*fp;
intcount;
charbuf[BUFSZ];
charcommand[150];
if(argc!=2)
{
printf("USAGE:example<processname> ");
exit(EXIT_SUCCESS);
}
else
sprintf(command,"ps-C%s|wc-l",argv[1]);

if((fp=popen(command,"r"))==NULL)
err_quit("popen");

if((fgets(buf,BUFSZ,fp))!=NULL)
{
count=atoi(buf);
if((count-1)==0)
printf("%snotfound ",argv[1]);
else
printf("process:%stotalis%d ",argv[1],(count-1));
}
pclose(fp);
exit(EXIT_SUCCESS);
}

Ⅱ LinuxC程序快速文件查找linuxc文件查找

Linux C程序快速文件查找是Linux系統中解決快速查找文件的一種有效辦法。藉助Linux C程序,可以實現快速地查找文件在哪裡,節省寶貴的計算機時間。本文將介紹Linux C程序快速文件查找的相關知識以及具體實現步驟,以便大家更方便地利用Linux C程序查找文件。
首先,Linux C程序快速文件查找的具體實現方式:首先得到查詢的文件名,然後從指定的目錄中去遍歷每一個子文件夾,直至找到該文件為止。也就是說,遍歷子文件夾來獲取文件信息,找到目標文件之後,返回結果。因此,Linux C程序快速文件查找中最重要的操作就是遍歷子文件夾的過程。Linux下的遍歷函數有兩個:scandir函數和readdir函數,其中scandir函數是使用更常見的,但scandir函數僅適用於文件名稱,不能將文件屬性作為過濾條件,它只能按照文件名稱過濾,不能指定文件屬性作為過濾,而readdir函數可以指定文件屬性作為可以指定文件屬性作為過濾條件,但是由於沒有採用樹形查找,所以它無法實現快速查找。
此外,Linux C程序快速文件查找還可以採用遞歸+DFS的方式來實現,也就是將遍歷子文件夾的工作交給遞歸函數完成;而查找主要的操作交給DFS的函數來實現。有關Linux C程序快速文件查找的具體實現,可以參考相關技術文檔,以更好地實現Linux C程序快速文件查找。
至此,本文介紹了Linux C程序快速文件查找的相關信息,以及具體實現步驟。通過使用Linux C程序快速文件查找的方式,可以有效地節省寶貴的計算機時間,讓大家更方便地完成文件查找操作。希望以上介紹可以幫助到大家,以便大家能夠更有效地使用Linux C程序查找文件。

Ⅲ linux c判斷文件是否存在

intmain(int, argc, char **, argv){

FILE *Bootfp; /* access channel *//* Open channel to boot image */ if ((Bootfp = fopen("文件名", "r")) == NULL) { fprintf(stderr, "Cannot open %s\n", "文件名"); exit(1); }

}

Ⅳ linux怎樣實現一個C函數檢查文件夾是否存在,如果不存在,創建它,只能使用標准庫

這個玩意有標准庫,看書上的例字,一定是有寫的,
就是在存取文件的那部分章節。

ps:你搜io.h,file.h,應該就有……

Ⅳ linux判斷是不是文件且非空

比如當前目錄下有個文件名稱為abc.txt
如果 要判斷abc.txt是不是標准文件可以使用回-f參數
if [ -f ./abc.txt ];then
echo "abc.txt is regular file"
fi
要判斷是答否為空,使用-s參數
if [ -s ./abc.txt ];then
echo "abc.txt is not empty!"
fi
簡單的可以這樣寫
[ -f "./abc.txt" ] && echo 'filename is file!' || [ -s "./abc.txt" ] && echo 'filename is not empty!'

另外文件類型除了普通文件還有很多
-L 文件是一個符號鏈接
-b 文件是一個塊設備
-c 文件是一個字元設備
-p 文件是一個管道
-S 文件是一個socket
-t 文件與一個終端相關聯

閱讀全文

與linuxc判斷文件是否存在相關的資料

熱點內容
maya粒子表達式教程 瀏覽:84
抖音小視頻如何掛app 瀏覽:283
cad怎麼設置替補文件 瀏覽:790
win10啟動文件是空的 瀏覽:397
jk網站有哪些 瀏覽:134
學編程和3d哪個更好 瀏覽:932
win10移動硬碟文件無法打開 瀏覽:385
文件名是亂碼還刪不掉 瀏覽:643
蘋果鍵盤怎麼打開任務管理器 瀏覽:437
手機桌面文件名字大全 瀏覽:334
tplink默認無線密碼是多少 瀏覽:33
ipaddgm文件 瀏覽:99
lua語言編程用哪個平台 瀏覽:272
政采雲如何導出pdf投標文件 瀏覽:529
php獲取postjson數據 瀏覽:551
javatimetask 瀏覽:16
編程的話要什麼證件 瀏覽:94
錢脈通微信多開 瀏覽:878
中學生學編程哪個培訓機構好 瀏覽:852
榮耀路由TV設置文件共享錯誤 瀏覽:525

友情鏈接