acess() 判断目录是否存在
acess()功能描述:
检查调用进程是否可以对指定的文件执行某种操作。
<pre lang="c" escaped="true">
#include <unistd.h>
int access(const char *pathname, int mode);
</pre>
参数说明:
pathname: 需要测试的文件路径名。
mode: 需要测试的操作模式,可能值是一个或<strong>多个</strong>.
<ol>
<li>R_OK(可读?),</li>
<li> W_OK(可写?), </li>
<li>X_OK(可执行?) </li>
<li>或 F_OK(文件存在?)组合体。 </li>
</ol>
<blockquote>其实在用的最多的主要是利用F_OK来检查目录是否存在。</blockquote>
返回说明:
成功执行时,返回0。失败返回-1,errno被设为以下的某个值
<ol>
<li>EINVAL: 模式值无效 </li>
<li>EACCES: 文件或路径名中包含的目录不可访问 </li>
<li>ELOOP : 解释路径名过程中存在太多的符号连接 </li>
<li>ENAMETOOLONG:路径名太长 </li>
<li>ENOENT: 路径名中的目录不存在或是无效的符号连接 </li>
<li>ENOTDIR: 路径名中当作目录的组件并非目录 </li>
<li>EROFS: 文件系统只读 </li>
<li>EFAULT: 路径名指向可访问的空间外 </li>
<li>EIO: 输入输出错误 </li>
<li>ENOMEM: 不能获取足够的内核内存 </li>
<li>ETXTBSY:对程序写入出错 </li>
</ol>
<pre lang="c" escaped="true" line="1">
int main(int argc, char *argv[])
{
if (argc < 2) {
printf("Usage: ./test filename\n");
exit(1);
}
if (access(argv[1], F_OK) == -1) {
puts("File not exists!");
exit(2);
}
if (access(argv[1], R_OK) == -1)
puts("You can't read the file!");
else
if (access(argv[1], R_OK | W_OK) != -1)
puts("You can read and write the file");
else
puts("You can read the file");
exit(0);
}
</pre>
acess() 判断目录是否存在的更多相关文章
- python--文件删除、判断目录存在、字符串替换
昨晚笔试了金山WPS的测试开发卷,做个笔记(但不是答案,只是我的想法),关于文件和字符串的处理正在写入与完善至上一篇的博客中,现在题目如下: 1.使用脚本语言删除E:\abc目录下的所有文件: 利用o ...
- C#判断目录是否为隐藏
判断方法: DirectoryInfo di = new DirectoryInfo(path); if ((di.Attributes & FileAttributes.Hidden) == ...
- python判断目录或者文件
1. 判断目录是否存在 'isdir',删除目录时只有该目录为空才可以 'rmdir' import os if(os.path.isdir('D:/Python_workspace/spyder_s ...
- java sftp判断目录是否存在
java sftp判断目录是否存在 public boolean isExistDir(String path,ChannelSftp sftp){ boolean isExist=false; tr ...
- android 获取路径目录方法以及判断目录是否存在,创建目录
Environment 常用方法: * 方法:getDataDirectory()解释:返回 File ,获取 Android 数据目录.* 方法:getDownloadCacheDirectory( ...
- c# ftp 判断目录是否存在和创建文件夹
工作中项目一直使用的ftp上传日志文件出现了问题,新的服务器搭建好后,日志无法上传.正好来学习一下ftp. 程序中的流程是,一个计时器,每分钟检测配置文件中本地日志文件路径下有没有日志文件,如果有就上 ...
- Linux程序开发中如何判断目录是否为根目录?
问题引入 判断某个目录字符串是否是根目录,咋一听很简单,只要判断字符串是否是"/"即可,但是,很多情况下使用的路径是相对路径,那么如何判断相对路径是根目录呢? 思路分析 熟悉Lin ...
- shell 判断目录是否存在
判断/data/www/logs/wos_log/crontab_log是否, 如果不存在则新建 if [ ! -d "/data/www/logs/wos_log/crontab_log& ...
- linux bash shell 判断目录是否为空的函数
#!/bin/sh ##方法一 判断输出字符数统计为0 is_empty_dir(){ |wc -w` } ##方法二 判断输出string为空 #is_empty_dir(){ # ` ] #} t ...
随机推荐
- ubuntu下安装nodejs
前言 继前几天在wins环境下使用cygwin模拟器安装nodejs出现了一些问题后,今天我决定在ubuntu下安装nodejs,安装过程非常顺利,没有报错,看来还是linux环境给力啊,由于刚接触l ...
- java 关于mysql
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after co ...
- Eclipse中WEB项目自动部署到Tomcat
原因 很长时间没用Eclipse了,近期由于又要用它做个简单的JSP项目,又要重新学习了,虽然熟悉的很快,但记忆总是很模糊,偶尔犯错,以前很少写博客,现在感觉还是很有必要的,编程中每个人对于犯过的错误 ...
- Android 核心分析 之六 IPC框架分析 Binder,Service,Service manager
IPC框架分析 Binder,Service,Service manager 我首先从宏观的角度观察Binder,Service,Service Manager,并阐述各自的概念.从Linux的概念空 ...
- Android是什么 之三手机之硬件形态
手机硬件形态 本节可能与Android无关,但是Android系统现在这个阶段更多的是移动终端形态的开发平台,本节给出了Android背后的工作-Android管理的硬件是什么,Android的本质就 ...
- list、set、map的特点
java 集合(list.set.map)的特点 集合相关的类有一大堆,一般也只用到常用的方法增删改查,而且它它们的方法名也基本一样,所以一直都不知道什么时候用什么集合, 今天趁有空特意从网上整理资料 ...
- android开发 eclipse alt+”/”自动提示失效
http://blog.unvs.cn/archives/android-eclipse-alt.html 按照其中的第一条+第二条 处理 注意:abcd要替换为 abcdefghijklmnopqr ...
- 图片处理工具类 - ImageUtils.java
纯JAVA实现的图片处理工具类,提供图片的裁剪.压缩.获取尺寸.制作圆角等方法. 源码如下:(点击下载 -ImageUtils.java .FolderUtils.java .commons-io-2 ...
- iPhone 如何设置彩信 ?
使用 iPhone 时,不能使用短信发送图片,肿么办 ? 当然,它会提示你,要你设置彩信.关键是,该怎么设置彩信呢 ? · 首先,打开 “设置” - “蜂窝移动网络” - “蜂窝移动数据网络” (1) ...
- dataguru试听课程
http://www.dataguru.cn/article-5447-1.html#userconsent#