Linux C 程序 (14)

文件操作(Linux系统编程)

创建一个目录时,系统会自动创建两个目录.和..

C语言实现权限控制函数

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 #include<sys/types.h>
 4 #include<sys/stat.h>
 5
 6 int main(int argc , char **argv){
 7         int mode;
 8         int mode_u;
 9         int mode_g;
10         int mode_o;
11         char *path;
12
13         if(argc < 3){
14                 printf("%s<mode num> <target file>\n",argv[0]);
15                 exit(0);
16         }
17                 //字符串转换成整型
18         mode = atoi(argv[1]);
19         if(mode > 777 || mode < 0){
20                 printf("mode num error ! \n");
21                 exit(0);
22         }
23
24         mode_u = mode / 100;
25         mode_g = (mode - (mode_u*100)) / 10;
26         mode_o = mode - (mode_u*100) - (mode_g*10);
27         mode = (mode_u * 8 * 8) + (mode_g * 8) + mode_o;
28         path = argv[2];
29                 //改变权限函数
30         if(chmod(path , mode) == -1){
31                 perror("chmod error");
32                 exit(1);
33         }
34
35         return 0;
36 }
37
38 新建一个文件test.c
39 命令:./程序 444  test.c
时间: 2024-08-29 00:19:40

Linux C 程序 (14)的相关文章

linux 统计 程序 运行时间

测试 代码运行时间 linux 中的 <sys/time.h> 中 有个函数可以获取当前时间,精确到 微秒 ---->  gettimeofday() 1 #include <sys/time.h>       // int gettimeofday(struct timeval *tv, struct timezone *tz); 2 /********************************************* 3 * struct timeval 4 *

嵌入式linux应用程序调试方法

嵌入式linux应用程序调试方法 四 内存工具 17 4.1 MEMWATCH 17 4.2 YAMD 22 4.3 Electric Fence 24 五 C/C++代码覆盖.性能profiling工具 24 5.1 用gcov来测试代码覆盖率 25 5.2 使用gprof来优化你的C/C++程序 35 四 内存工具 您肯定不想陷入类似在几千次调用之后发生分配溢出这样的情形. 许多小组花了许许多多时间来跟踪稀奇古怪的内存错误问题.应用程序在有的开发工作站上能运行,但在新的产品工作站上,这个应用

linux应用程序地址布局

Linux应用程序在内存中的布局,由高地址到低地址依次为:栈.堆.BSS段.数据段.代码段.代码段的起始地址固定为0x8048000,无论哪一个应用程序它的代码段起始地址一定是0x8048000,这里的地址虚拟地址,映射到不同的物理地址中去. 查看程序各段的地址 ps    aux     这个命令用于查看进程的ID,比如我运行一个可执行程序addr 可以看到addr的进程ID是24048.然后用cat命令查看进程在内部的布局 cat    /proc/进程ID/maps,这里我们是cat   

Linux 应用程序 之 IO编程(一)

我的linux 环境是windows8.1 + VMware6.5.1+  Fedora14,参考书籍:第六章 链接:Linux应用程序开发详解(1-11).pdf 我利用一个SSH软件SSH Secure File Transfer Client 来从Linux传输文件 来张虚拟机运行Fedora的图: 下面步入正题: IO最基本操作: 1 //hello.c 2 #include <unistd.h> 3 #include <sys/types.h> 4 #include &l

Linux C++程序进行性能分析工具gprof使用入门

性能分析工具 软件的性能是软件质量的重要考察点,不论是在线服务程序还是离线程序,甚至是终端应用,性能都是用户体验的关键.这里说的性能重大的范畴来讲包括了性能和稳定性两个方面,我们在做软件测试的时候也是要重点测试版本的性能表现和稳定性的.对于软件测试过程中发现的性能问题,如何定位有很多的方法.基本的方法可能是开发者对代码进行review,或者是使用一些工具对代码进行性能分析.常见的性能分析tuning工具有哪些呢?下面两篇文章做了详细的总结: https://computing.llnl.gov/

《Linux高性能服务器编程》学习总结(七)——Linux服务器程序规范

第七章      Linux服务器程序规范 服务器程序除了需要网络通信外,还应该考虑很多其他的细节,而这些细节很多很杂,但又基本是模板式的.1)服务器程序基本都是以后台形式运行的,没有控制终端,不能接受用户输入,其父进程通常是init.2)服务器程序有一套日志系统.3)服务器程序以某个专门的非root身份运行.4)服务器通常是可配置的.5)服务器进程启动时通常会生成一个PID文件以记录后台进程的PID.6)服务器程序同城需要考虑系统资源和限制. 服务器一般使用syslog函数与rsyslogd守

Linux服务器程序规范

除了网络通信外,服务器程序还必须考虑许多其他细节问题,零碎,但基本上时模板式的. ---引 Linux服务器程序一般以后台形式运行.后台程序又称守护进程.它没有控制终端,因而也不会意外接受用户输入.守护进程的父进程一般是init进程(pid=1). Linux服务器程序通常有一套日志系统,它至少能输出日志到文件,有的高级服务器可以输出日志到专门的UDP服务器.大部分后台进程都在/var/log下有自己的日志目录. Linux服务器程序一般以某个专门的非root身份运行.mysqld, httpd

Linux C程序异常退出怎么办——core文件帮你忙

想必你一定遇到过Linux下程序异常退出的问题,异常退出貌似有一种神奇的魔力,会让你神经突然紧张.不要怕,Linux是很强大的,在程序退出的时候,会在可执行文件所在的目录生成一个core文件,它很好地记录了一些神秘而又必要的东西,帮助你定位到错误的根源,想想以前面试的时候人家闻到core文件,我答不上来,你说面试官会怎样想,那么就来说说core文件. core文件实际上就是一个内存映象同时加上一些调试信息. 首先,你得打开系统的core文件生成开关吧,终端中输入ulimit -c命令,若显示0表

linux应用程序开发-文件编程-系统调用方式

在看韦东山视频linux驱动方面有一些吃力,究其原因,虽然接触过linux应用程序编程,但是没有深入去理解,相关函数用法不清楚,正好看到国嵌视频对这一方面讲的比较透彻, 所以把学习过程记录下来,也作为linux应用程序开发的一个系列吧! 文件编程有两种方式,一是系统调用方式,二是库函数调用. 前者依赖特定的平台,后者不依赖平台. 系统调用:创建 int creat(const char *filename,mode_t mode); filename:要创建的文件名 mode:创建模式 S_IR