linux c chmod 更改权限函数
chmod函数:
1.原型:
#include<sys/types.h>
#include<sys/stat.h>int chmod(const char *pathname, mode_t mode);
2.功能:
依参数mode权限来更改参数pathname指定文件的权限。
3.示例:
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h> //基本系统数据类型
#include <sys/stat.h> //文件状态//argc记录了用户在运行程序的命令行中输入的参数的个数
//**argv:或者认为是*argv[]字符串指针数组,每一个元素指向一个在命令行输入的参数
//编译器将输入参数的信息放入main函数的参数列表中
//赋值过程是编译器完成的,我们只需要读出数据就可以了
int main(int argc, char **argv)
{int mode; //权限int mode_u; //所有者user的权限int mode_g; //所属组group的权限int mode_o; //其他用户other的权限char *path;//检查参数个数的合法性//若在命令行输入参数少于3个,则不合法,并给出正确输入方法的提示信息if (argc < 3){printf("%s <mode num> <target file>\n", argv[0]);//argv[0]指向输入的程序路径及名称。exit(0); //正常运行并退出程序,0返回给操作系统}//获取命令行参数//atoi()函数:将字符串转化为int类型变量mode = atoi(argv[1]);if ((mode > 777) || (mode < 0)){printf("mode num error!\n");exit(0);}mode_u = mode / 100;mode_g = mode / 10 % 10;mode_o = mode % 10;mode = (mode_u * 8 * 8) + (mode_g * 8) + mode_o; //八进制转换path = argv[2];//int chmod(const char * path, mode_t mode)//函数说明:chmod()会依参数mode权限来更改参数path指定文件的权限。//更改失败返回-1if (chmod(path, mode) == -1){perror("chmod error");//perror()是错误输出函数,在标准输出设备上输出一个错误信息。exit(1); //非正常运行并退出程序。}return 0;
}
linux c chmod 更改权限函数相关推荐
- linux 文件权限无法更改,解决linux不能使用chmod更改权限的问题
本人安装的是win10和ubuntu的双系统,发现在ubuntu下挂载windows硬盘不用命令chmod更改文件的权限,解决方法记录如下: 对于使用命令$ chmod 777 dirname更改不了 ...
- linux中chmod -r权限,unix及linux中chmod命令的十个例子
在unix以及linux之中,chmod命令用来改变文件以及目录的权限.这是unix和linux用户所必须熟知众多基本的命令之一.在这个unix命令的教程之中,我们将会学习到如何使用chmod命令来改 ...
- Linux笔记(更改权限chmod,更改所有组chown,umask,隐藏权限chattr)
一.文件或目录权限chmod rw- r-- r-- . --- --- --- -- 所有者 ...
- ubuntu chmod更改权限
权限 chmod 全称 change modifiy - rw- rw- rwx d rw- rw- r- - 第1位是'-'是文件 第1位是'd'是文件夹 拥有着权限 用户组权限 其 ...
- chmod 更改权限
chmod +/- +代表增加权限,-代表减少权限 在+/- 后面可以跟上三个字符,rwx r代表可读 w代表可写 x代表可执行权限 最后加上文件名或者目录名字 例如: chmod + r aaa 给 ...
- java 代码 linux 执行chmod 755权限代码
Runtime.getRuntime().exec("chmod 755 -R /opt/ftpserver"); 755: 1.第一位7,代表文件所有者拥有的权限为可读(4)+可 ...
- linux 可执行文件权限不够,root执行/media可执行文件权限不够,chmod修改权限无效...
问题: 我想执行media文件夹下自己写的某个程序,但无法执行? 1. 于是我以root的身份在终端以输入指令chmod a+x 1,回车后没反应,查询该文件夹的属性,也没有改变,即修改权限无效. 2 ...
- linux必须root权限才能mount,root执行/media可执行文件权限不够,chmod修改权限无效...
http://blog.csdn.net/pipisorry/article/details/39649699 问题: 我想执行media文件夹下自己写的某个程序,但无法执行? 1. 于是我以root ...
- linux挂载u盘出错_linux挂载U盘、移动硬盘后无法更改权限
话说最近在树莓派上搭建了一个owncloud,因为树莓派的存储空间有限,就插了个16G的U盘,然后设置成开机自动挂载.这里稍微注意一下的是U盘的格式最好不要NTFS,因为一般情况下NTFS格式的文件系 ...
最新文章
- virtualbox 启动时Kernel driver not installed (rc=-1908) 错误的解决方法
- 无法打开文件“python310_d.lib”
- 四条使用Spring BeanUtils的总结,避免各种诡异的属性拷贝问题!
- 深入理解SpringBoot之装配条件
- 关于继承构造器的调用
- Spring添加对缓存的支持
- 未发现数据源名称并且未指定默认驱动程序_看我如何发现NVIDIA GeForce Experience代码执行漏洞...
- postgresql9.1_gaussdb200_解析表结构
- 电子病历基本架构与数据标准
- nexus 4 android 5.0,Nexus 4可以升级Android 5.1了!
- C语言中指针与数组的区别,C语言 指针与数组的详解及区别
- spring 通配符的匹配很全面, 但无法找到元素 'context:component-scan' 的声明
- Bootloader - main system - Recovery的三角关系【转】
- Java虚拟机(JVM)初探
- MATLAB利用Copula函数进行频率分析
- vscode下载历史版本
- win7电脑怎么录屏?如何使用电脑录屏软件
- 香橙派 OrangPi PC 安装Lakka游戏系统及使用指南
- vscode 侧边栏源代码管理不见了
- 基于爬虫+人脸识别库实现指定人物自动采集
热门文章
- MySQL高可用群集------配置MMM高可用架构
- 微信小程序教学第三章第四节(含视频):小程序中级实战教程:下拉更新、分享、阅读标识...
- Java NIO系列教程(一) Java NIO 概述
- MySQL数据库分表分区
- Android学习笔记之-Android性能测试之DDMS的使用
- 5.MySQL Cluster(MySQL集群)
- JSP学习笔记(四十九):抛弃POI,使用iText生成Word文档
- [转]Git忽略提交规则 - .gitignore配置运维总结
- 深入浅出:对MySQL主从配置的一些总结
- 大数据催生决策新模式 未来将改变更多