Linux系统编程初探系列之一:文件编程
系统函数 int creat(const char* filename,mode_t mode)
filename:需要创建的文件名(包含路径,缺省为当前路径)
mode:创建模式
常见的创建模式有:S_IRUSR------可读
S_IWUSR-----可写
S_IXUSR-----可执行
S_IRWXU-----可读、可写、可执行
除了用上述宏 还可以用数字来表示文件的访问权限
1------->可执行
2------->可写
4------->可读
6------->可读可写
7------->可读可写可执行
0------->无任何权限
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h> void create_file(char *filename)
{
/*创建的文件具有可读可写的属性*/
if(creat(filename,)<)
{
printf("create file %s failure!\n",filename);
exit(EXIT_FAILURE);
}
else
{
printf("create file %s success!\n",filename);
}
} int main(int argc,char *argv[])
{
/*判断入参有没有传入文件名 */
if(argc<)
{
printf("you haven't input the filename,please try again!\n");
exit(EXIT_FAILURE);
}
for(i=;i<argc;i++)
{
create_file(argv[]);
}
exit(EXIT_SUCCESS);
}

程序点评:
1.creat(filename,0666) -------666的权限分别对应于文件所有者,文件所有者所在组,其他用户
2.int main(int argc,char*argv[])----------------在执行程序的时候,argc是输入参数个数,argv[]是保存着文件名(本质是字符串地址)
所以在执行程序时,在命令端输入 ./file_creat test 才能创建文件
argc 命令行的总的参数个数(即使 运行程序./file_creat 后面没有文件,个数也是1)
记录了用户在运行程序的命令行中输入的参数的个数
argv[]存储argc个指针变量的数组
其中第0个元素是程序名,后面的元素是用户输入的参数
Linux系统编程初探系列之一:文件编程的更多相关文章
- linux系统下怎么安装.deb文件
linux系统下怎么安装.deb文件? deb 是 ubuntu .debian 的格式.rpm 是 redhat .fedora .suse 的格式. 他们不通用(虽然可以转换一下). deb是de ...
- linux系统下,递归删除.svn文件
linux系统下,递归删除.svn文件 SVNLinux 进入要删除的目录,执行下面的命令就可以啦. find . -name "*.svn" | xargs rm -rf
- 如何查看linux系统下的各种日志文件 linux 系统日志的分析大全
日志分类: 1. 连接时间的日志 连接时间日志一般由/var/log/wtmp和/var/run/utmp这两个文件记录,不过这 两个文件无法直接cat查看,并且该文件由系统自动更新,可以通过如下: ...
- linux系统下怎么安装.deb文件?
linux系统下怎么安装.deb文件? deb 是 ubuntu .debian 的格式. rpm 是 redhat .fedora .suse 的格式. 他们不通用(尽管能够转换一下). deb是d ...
- Linux系统中如何查找大文件或文件夹的方法
在Windows系统中,我们可以使用TreeSize工具查找一些大文件或文件夹,非常的方便高效,在Linux系统中,如何去搜索一些比较大的文件呢?下面我整理了一下在Linux系统中如何查找大文件或文件 ...
- Linux系统下的 /etc/fstab 文件解读
1 [root@localhost ~]# cat /etc/fstab 2 3 # 4 # /etc/fstab 5 # Created by anaconda on Sat Nov 3 12:03 ...
- 云服务器 ECS Linux 系统中常见的日志文件介绍
云服务器 ECS Linux 系统中,日志文件是非常重要的文件,它们记录了很多系统中重要的事.Linux 系统中常见日志文件概述如下: /var/log/cron可以在 cron 文件中检查 cron ...
- Linux系统下如何运行.sh文件
在Linux系统下运行.sh文件有两种方法,比如我在root目录下有个datelog.sh文件 第一种(这种办法需要用chmod使得文件具备执行条件(x): chmod u+x datelog.sh) ...
- windows系统正常但linux系统下找不到文件的问题
问题描述:最近一个项目开发环境是windows系统,正式环境是linux系统.验证码图片在开发环境正常,但是在正式环境下一直报404. 问题原因:File dir = new File(realPat ...
- Linux系统查找清理磁盘大文件
本文主要介绍Linux系统磁盘使用空间不足时,如何查找大文件并进行清理的方法. 使用df-h检查一台服务器磁盘使用空间,发现磁盘已经使用了100%,其中/dev/mapper/vg_iavp-lv_r ...
随机推荐
- [ios2]iOS 使用subversion管理iOS源代码 【转】
使用subversion管理iOS源代码 1.安装和配置subversion服务器 在windows 服务器上安装VisualSVN-Server,下载地址http://www.visualsvn.c ...
- js如何判断是否在iframe中
JS代码://方式一 if (self.frameElement && self.frameElement.tagName == "IFRAME") { alert ...
- PHP连接MSSQL数据库案例,PHPWAMP多个PHP版本连接SQL Server数据库
课前小知识普及:MSSQL和SQL Server是同一个软件,叫法不同而已,MSSQL全称是Microsoft SQL Server,MSSQL是简写,有些人则喜欢直接叫SQL Server,我就比较 ...
- python自动化开发-2
1.python的数据类型之列表 列表是Python开发语言中最常见的数据类型之一,通过列表可以实现对数据的增删改等常用操作. 列表的定义:例子 names = ["Lucy",& ...
- R语言 关联规则
在用R语言做关联规则分析之前,我们先了解下关联规则的相关定义和解释. 关联规则的用途是从数据背后发现事物之间可能存在的关联或者联系,是无监督的机器学习方法,用于知识发现,而非预测. 关联规则挖掘过程主 ...
- 初识git--基础命令
重要:远程分支是一些无法移动的本地分支,本地分支,本地分支,三遍!是对远程库中分支的索引,只有在git进行网络交互时才会更新,用 (远程仓库名)/(分支名) 这样的形式表示远程分支 一.基础命令1 1 ...
- c/c++笔试面试经典函数实现
/* strcpy函数实现 拷贝字符串 */ char* Strcpy(char* dst, char* src) { assert(dst != NULL && src != NUL ...
- Dom编程(一)
dom:document object model 文档对象模型 1.事件 body 事件:onload onunload onbeforeunload body.document对象的事件 (1)o ...
- apache bench(ab)压力测试模拟POSt请求
ab命令格式: -N|--count 总请求数,缺省 : 5w -C|--clients 并发数, 缺省 : 100 -R|--rounds 测试次数, 缺省 : 10 次 -S|-sleeptime ...
- ES 6 : Math对象的扩展
ES6在Math对象上新增了17个与数学相关的方法.所有这些方法都是静态方法,只能在Math对象上调用. 1.Math.trunc() Math.trunc方法用于去除一个数的小数部分,返回整数部分. ...