導航:首頁 > 文件類型 > 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判斷文件是否存在相關的資料

熱點內容
魅族mx3提示網路可能會受到監控 瀏覽:308
如何判斷復制文件是否完整 瀏覽:803
qq接收的語音文件在 瀏覽:408
手機qq禁止查看動態 瀏覽:923
如何用編程求解二重積分 瀏覽:366
在桌面上搜索不到文件夾 瀏覽:723
中外文專利網站有哪些 瀏覽:682
尖刀車端面槽怎麼編程 瀏覽:70
電腦重裝會把所有文件都刪掉嗎 瀏覽:982
java匿名內部類構造函數 瀏覽:573
如何ftp文件到linux 瀏覽:894
win10文件夾的圖片自動排列 瀏覽:155
安卓電腦文件管理器 瀏覽:512
聯想手機k860刷機教程 瀏覽:356
oa刪除已發文件 瀏覽:397
win7asp配置文件 瀏覽:362
java網頁能做心跳機制 瀏覽:817
逆戰文件應用在哪裡 瀏覽:102
紅頭文件訂書紅線在哪裡 瀏覽:851
excel怎麼做文件頭 瀏覽:703

友情鏈接