linux仿写chmod命令
#include<stdio.h>
#include<stdlib.h>
#include<sys/types.h>
#include<sys/stat.h>
int main(int argc,char **argv)
{
int mode;
int mode_u;
int mode_g;
int mode_o;
char *path;
if(argc<3)
{
printf("%s <mode num> <target file>\n",argv[0]);;
exit(0);
}
mode = atoi(argv[1]);
if(mode>777||mode<0)
{
printf("mode num error");
exit(0);
}
mode_u = mode/100;
mode_g = (mode- mode_u*100)/10;
mode_o = mode -mode_u*100-mode_g*10;
mode = mode_u*8*8+mode_g*8+mode_o;
path = argv[2];
if(chmod(path,mode)==-1)
{
perror("chmod error");
exit(1);
}
return 0;
}
相关推荐
-
修改linux文件权限命令:chmod命令详解
Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. 文件或目录的访问权限分为只读,只写和可执行三种.以文件为例,只读权限表示只允许读其内容,而禁止对其做任何的更改操作.可执行权限表示允许将该文件作为一个程序执行.文件被创建时,文件所有者自动拥有对该文件的读.写和可执行权限,以便于对文件的阅读和修改.用户也可根据需要把访问权限设置为需要的任何组合. 有三种不同类型的用户可对文件或目录进行访问:文件所有者,同组用户.其他用户.所有者一般是文件的
-
linux shell在while中用read从键盘输入的实现
系统是ubuntu 14.04 64bit,之前曾想安装Stream来玩dota2,但最终没成功.由于Stream只有32bit,安装Stream时也安装了大量32bit的库.删除Stream后,这些库也一直没管,今天忽然心血来潮,想清理一下系统,把不必要的32bit库都干掉. dpkg -l | grep "i386"看一下,32bit库太多,一个个敲sudo apt-get purge xxx显然有点累,分析了一下输出, 格式大概如下: rc libkrb5support0:i38
-
Linux xargs命令详细介绍
Linux xargs命令 1.功能: xargs可以将stdin中以空格或换行符进行分隔的数据,形成以空格分隔的参数(arguments),传递给其他命令.因为以空格作为分隔符,所以有一些文件名或者其他意义的名词内含有空格的时候,xargs可能会误判.简单来说,xargs是给其他命令传递参数的一个过滤器,是构建单行命令的重要组件之一. 之所以要用到xargs,是因为由于很多命令不支持使用管道|来传递参数,例如: find /sbin -perm +700 |ls -l //这个命令是错误,因
-
linux线程的取消(终止)方法
关键: pthread_cancel函数发送终止信号 pthread_setcancelstate函数设置终止方式 pthread_testcancel函数取消线程(另一功能是:设置取消点) 1 线程取消的定义 一般情况下,线程在其主体函数退出的时候会自动终止,但同时也可以因为接收到另一个线程发来的终止(取消)请求而强制终止. 2 线程取消的语义 线程取消的方法是向目标线程发Cancel信号(pthread_cancel函数发送Cancel信号),但如何处理Cancel信号则由目标线程自己决定,
-
一天一个shell命令 linux文本操作系列-chmod命令用法
先来熟悉下权限,以上一个例子comm下的文档为例 $ls -l -rw-rw-r-- 1 yjplxq yjplxq 36 7月 30 22:40 A.txt -rw-rw-r-- 1 yjplxq yjplxq 27 7月 30 22:41 B.txt -rw-rw-r-- 1 yjplxq yjplxq 1231 7月 30 22:45 comm.txt -rwxrwxr-x 1 yjplxq yjplxq 0 7月 31 11:22 comm.sh drw-r
-
Linux查看命令之od命令详解
od(octal dump)命令 od(octal dump)命令可以以八进制.十进制.十六进制和ASCII码的格式来显示文件或者流,它们对于访问或可视地检查文件中不能直接显示在终端上的字符(如换行符等)很有用.此外,在一些有空洞的文件中可以通过od命令查看空洞的位置. 一般使用格式: od [-aBbcDdeFfHhIiLlOosvXx] [-A base] [-j skip] [-N length] [-t type] [[+]offset[.][Bb]] [file ...] 来个简化版:
-
Linux多线程锁属性设置方法
互斥锁是Linux下多线程资源保护的常用手段,但是在时序复杂的情况下,很容易会出现死锁的情况. 可以通过设置锁的属性,避免同一条线程重复上锁导致死锁的问题. 通过int pthread_mutexattr_settype(pthread_mutexattr_t *attr, int type)接口设置 一般是以下四种属性: PTHREAD_MUTEX_NORMAL This type of mutex does not detect deadlock. A thread attempting t
-
Linux线程退出方式总结(推荐)
在编写多线程代码时,经常面临线程安全退出的问题. 一般情况下,选择检查标志位的方式: 在线程的while循环中,执行完例程后,都对标志位进行检查,如果标志位指示继续执行则再次执行例程,如果标志位设置为退出状态,则跳出循环,结束线程的运行. 这个标志位需要主线程(或其他线程)设置,设置后,主线程调用pthread_join接口进入休眠(接口参数指定了等待的线程控制指针),子线程退出后,主线程会接收到系统的信号,从休眠中恢复,这个时候就可以去做相关的资源清除动作. 这个方法可以保证子线程完全退出,主
-
Linux od命令详细介绍及用法实例
Linux od命令详解 1.功能 od命令用于将指定文件内容以八进制.十进制.十六进制.浮点格式或ASCII编码字符方式显示,通常用于显示或查看文件中不能直接显示在终端的字符.od命令系统默认的显示方式是八进制,名称源于Octal Dump. 常见的文件为文本文件和二进制文件.od命令主要用来查看保存在二进制文件中的值,按照指定格式解释文件中的数据并输出,不管是IEEE754格式的浮点数还是ASCII码,od命令都能按照需求输出它们的值. 大家也可以了解一下hexdump命令,以十六进制输出,
-
详解在Linux虚拟机下配置tomcat
1.到Apache官网下载tomcat http://tomcat.apache.org/download-80.cgi 我下载的是tomcat8 jdk是1.8 如果你们的jdk是1.7或者1.7以下的就下载tomcat6或者tomcat7 2.把下载好的tomcat上传到Linux虚拟机下 3.去到tomcat所在的目录下解压压缩包 我的tomcat在/software目录下 解压命令:tar xzvf apache-tomcat-8.5 解压好后会多出一个文件 输入命令:ll 查看目录 接
随机推荐
- js中settimeout方法加参数
- 实例讲解设计模式中的命令模式在iOS App开发中的运用
- 基于Rest的API解决方案(jersey与swagger集成)
- 一步一步实现iOS主题皮肤切换效果
- php学习笔记之面向对象编程
- 微信小程序开发中的疑问解答汇总
- Python使用struct处理二进制的实例详解
- C#匿名委托与Lambda表达式详解
- C/C++函数参数传递机制详解及实例
- PHP判断指定时间段的2个方法
- 一篇关于程序员性格的文章第1/3页
- Linux下Apache安装/增加mod_rewrite模块的方法
- c#中Linq to Sql 增删除的实例
- 用JTrackBar实现的模拟苹果风格的滚动条
- Android中ListView的几种常见的优化方法总结
- java实现文本文件删除空行的示例分享
- Android应用创建多个快捷方式
- Sprint Boot 集成MongoDB的操作方法
- Vue将页面导出为图片或者PDF
- iOS安全防护系列之字符串及系统函数隐藏详解