Linux C/C++目录和文件的更多操作

简介: Linux C/C++目录和文件的更多操作

1.access()库函数

用于判断当前用户对目录或文件的存取权限

#include<unistd.h>
int accsee(const char *pathname,int mode);
参数说明:
pathname  //目录或文件名
mode    //需要判断的存取权限,在<unistd.h>预定义如下
      #define R_OK 4  //读权限
      #define W_OK 2  //写权限
      #define X_OK 1  //执行权限
      #define F_OK 0  //是否存在
返回值:
pathname满足mode权限返回0,不满足返回-1,errno被设置

在实际开发中,access()函数主要用于判断目录是否存在

2.stat()库函数

用于获取path参数指定目录或文件的详细信息,存在buf结构体

#include<sys/stat.h>
int stat(const char *path,struct stst *buf);
返回值:
0-成功 -1失败 errno被设置

3.utime()库函数

用于修改目录或文件时间

#include<sys/types.h>
#include<utime.h>
int utime(const char *filename,const struct utimbuf *times);
utime()用来修改参数filename的st_atime和st_mtime,如果参数times为空指针,则设置为目前时间
struct utimbuf
{
  time_t actime;
  time_t modtime;
};
返回值:
0-成功 -1失败 errno被设置

4.rename()库函数

用于重命名目录或文件,相当于操作系统mv命令

#include<stdio.h>
int rename(const char*oldpath,const char*newpath);
返回值:
0-成功 -1失败 errno被设置

5.remove()库函数

用于删除目录或文件,相当于操作系统rm命令

#include<stdio.h>
int remove(cosnt char *pathname);
返回值:
0-成功 -1失败 errno被设置


相关文章
|
7天前
|
C++ 容器
C++中向量的操作vector
C++中向量的操作vector
|
3天前
|
存储 运维 安全
Linux命令stat:深入了解文件与文件系统状态
`stat`命令在Linux中用于显示文件和文件系统的详细状态,包括权限、大小、时间戳等。它通过读取inode获取信息,特点是显示全面、易用且支持多种参数,如`-c`自定义格式,`-f`查看文件系统状态,`-L`处理符号链接。例如,`stat example.txt`显示文件详情,`stat -c &quot;%n 的大小是 %s 字节&quot; example.txt`输出文件大小。理解`stat`有助于系统管理和故障排查。
|
4天前
|
Ubuntu 应用服务中间件 Linux
Linux学习之Ubuntu 20中OpenResty的nginx目录里内容和配置文件
总的来说,OpenResty的Nginx配置文件是一个强大的工具,它允许你以非常灵活的方式定义你的Web服务的行为。
11 2
|
6天前
|
Linux 数据处理 C语言
【Linux】基础IO----系统文件IO & 文件描述符fd & 重定向(下)
【Linux】基础IO----系统文件IO & 文件描述符fd & 重定向(下)
22 0
|
6天前
|
Linux C语言 C++
【Linux】基础IO----系统文件IO & 文件描述符fd & 重定向(上)
【Linux】基础IO----系统文件IO & 文件描述符fd & 重定向(上)
19 0
|
12天前
|
存储 Linux
Linux文件的上和下,FinalShell文件右键可下文件,先选择root文件夹,然后把他文件往里面拖动,就可以下载了,命令下载,ls -l可以看当前文件目录,sz 文件名可下载,tab补,rz出上
Linux文件的上和下,FinalShell文件右键可下文件,先选择root文件夹,然后把他文件往里面拖动,就可以下载了,命令下载,ls -l可以看当前文件目录,sz 文件名可下载,tab补,rz出上
|
12天前
|
Linux 数据安全/隐私保护 iOS开发
Linux的root用户,普通用户无法在根录中创建文件,一般在其HOME目录里是不受限的,一旦出了HOME目录,大多数地方,仅有读和执行的权限,ctrl + d回到上一个用户,Exit,su - ro
Linux的root用户,普通用户无法在根录中创建文件,一般在其HOME目录里是不受限的,一旦出了HOME目录,大多数地方,仅有读和执行的权限,ctrl + d回到上一个用户,Exit,su - ro
|
12天前
|
Linux
创建目录mkdir,语法​mkdir [-p] Linux路径​,mkdir ~/test3在home下创建,mkdir ./x 当前目录创建 mkdir /home/xx,mkdir -p 通,必须
创建目录mkdir,语法​mkdir [-p] Linux路径​,mkdir ~/test3在home下创建,mkdir ./x 当前目录创建 mkdir /home/xx,mkdir -p 通,必须
Linux07特殊路径符,向上回退一级,cd ..切换目录到 /home/itheima,怎样做 .表示当前目录,cd ./Desktop,切换到当前目录的Desktop文件,cd ../... 退
Linux07特殊路径符,向上回退一级,cd ..切换目录到 /home/itheima,怎样做 .表示当前目录,cd ./Desktop,切换到当前目录的Desktop文件,cd ../... 退
|
12天前
|
Linux
Linux部署06 ---相对路径绝对路径,想要切换到home下的文件 cd /home/itheima/Desktop cd Desktop,相对路径以当前目录为起点一种写法 不写/,相对是当前目录
Linux部署06 ---相对路径绝对路径,想要切换到home下的文件 cd /home/itheima/Desktop cd Desktop,相对路径以当前目录为起点一种写法 不写/,相对是当前目录