`
panshaobinSB
  • 浏览: 197600 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

shell判断文件,目录是否存在或者具有权限

 
阅读更多
http://blog.csdn.net/sws9999/article/details/4168155
#!/bin/sh
myPath="/var/log/httpd/"
myFile="/var /log/httpd/access.log"
#这里的-x 参数判断$myPath是否存在并且是否具有可执行权限
if [ ! -x "$myPath"]; then
mkdir "$myPath"
fi
#这里的-d 参数判断$myPath是否存在
if [ ! -d "$myPath"]; then
mkdir "$myPath"
fi
#这里的-f参数判断$myFile是否存在
if [ ! -f "$myFile" ]; then
touch "$myFile"
fi
#其他参数还有-n,-n是判断一个变量是否是否有值
if [ ! -n "$myVar" ]; then
echo "$myVar is empty"
exit 0
fi
#两个变量判断是否相等
if [ "$var1" = "$var2" ]; then
echo '$var1 eq $var2'
else
echo '$var1 not eq $var2'
fi






========================================
shell 判断语句

流程控制 "if" 表达式 如果条件为真则执行then后面的部分: if ....; then
....
elif ....; then
....
else
....
fi
大多数情况下,可以使用测试命令来对条件进行测试。比如可以比较字符串、判断文件是否存在及是否可读等等…   通常用" [ ] "来表示条件测试。注意这里的空格很重要。要确保方括号的空格。
[ -f "somefile" ] :判断是否是一个文件
[ -x "/bin/ls" ] :判断/bin/ls是否存在并有可执行权限
[ -n "$var" ] :判断$var变量是否有值
[ "$a" = "$b" ] :判断$a和$b是否相等          -r file     用户可读为真
-w file     用户可写为真
-x file     用户可执行为真
-f file     文件为正规文件为真
-d file     文件为目录为真
-c file     文件为字符特殊文件为真
-b file     文件为块特殊文件为真
-s file     文件大小非0时为真
-t file     当文件描述符(默认为1)指定的设备为终端时为真
######################################################### 含条件选择的shell脚本
    对于不含变量的任务简单shell脚本一般能胜任。但在执行一些决策任务时,就需要包含if/then的条件判断了。shell脚本编程支持此类运算,包 括比较运算、判断文件是否存在等。基本的if条件命令选项有: -eq —比较两个参数是否相等(例如,if [ 2 –eq 5 ])
-ne —比较两个参数是否不相等
-lt —参数1是否小于参数2
-le —参数1是否小于等于参数2
-gt —参数1是否大于参数2
-ge —参数1是否大于等于参数2
-f — 检查某文件是否存在(例如,if [ -f "filename" ])
-d — 检查目录是否存在
几 乎所有的判断都可以用这些比较运算符实现。脚本中常用-f命令选项在执行某一文件之前检查它是否存在。 ################################################################## 判断文件是否存在 #!/bin/sh
today=`date -d yesterday +%y%m%d`
file="apache_$today.tar.gz"
cd /home/chenshuo/shell
if [ -f "$file" ];then
echo "OK"
else
echo "error $file" >error.log
mail -s "fail backup from test" chenshuo@soufun.com <error.log
fi
分享到:
评论

相关推荐

    shell判断文件,目录是否存在或者具有权限的代码

    #这里的-x 参数判断$myPath是否存在并且是否具有可执行权限 if [ ! -x $myPath]; then mkdir $myPath fi #这里的-d 参数判断$myPath是否存在 if [ ! -d $myPath]; then mkdir $myPath fi #这里的-f参数判断$myFile...

    algoboy101#note#Linux判断文件和文件夹是否存在1

    Linux判断文件和文件夹是否存在shell判断文件,目录是否存在或者具有权限这里的-x 参数判断$myPath是否存在并且是否具有可执行权限这里的-d 参数判

    判断文件是否存在的shell脚本代码

    # 判断文件是否存在 # link:www.jb51.net # date:2013/2/28 myPath=/var/log/httpd/ myFile=/var /log/httpd/access.log # 这里的-x 参数判断$myPath是否存在并且是否具有可执行权限 if [ ! -x $myPath]; then ...

    php中判断文件空目录是否有读写权限的函数代码

    有时候我们需要判断是否对目录有读写权限就需要下面的代码,需要的朋友的可以参考下

    shell查找当前目录下大于1M的文件的三种方法分享

    1、使用find的参数实现 代码如下:[root@xiaobb mnt]# find . -maxdepth 1 -size +1000000c./sys.tar.gz./install.tar.bz2./CTeX_2.9.0.152_Full.exe./...xr-x 19 root root 12K 2011-04-24 20:28 git-rw-r–r

    linux_shell.tar.gz

    Linux教学项——基础环境及命令教学(linux_study.md),包括常用脚本为: ...test6.sh 判断文件及文件夹存在等基础操作 test7.sh 获取当前网段下存活主机信息 test8.sh 添加用户并配置对应登录密码(root权限)

    Linux shell实现压缩多个文件代码实例

    Linux环境下写一个脚本 ... 您可能感兴趣的文章:linux shell 根据进程名获取pid的实现方法linux shell 中判断文件、目录是否存在的方法linux shell中“.” 和 “./”执行的区别详解Linux Shell Map的用法详解Lin

    Linux 60个文件处理命令

    file通过探测文件内容判断文件类型,使用权限是所有用户。 2.格式 file [options] 文件名 3.[options]主要参数 -v:在标准输出后显示版本信息,并且退出。 -z:探测压缩过的文件类型。 -L:允许符合连接。 -f...

    UNIX Handbook

    35.判断对端节点的文件是否存在: 77 36.awk的split函数的使用: 77 37.统计字符串在文件中出现的次数: 77 38.如何进行精确匹配: 81"&gt;命令格式 9 一.shell与Unix平台 9 二.shell基本知识 9 三.grep 命令 11 四...

    入门学习Linux常用必会60个命令实例详解doc/txt

    Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以,在Linux系统上工作离不开使用系统提供的命令。要想真正理解Linux系统,就必须从Linux...

    shell脚本 自动创建用户详解及实例代码

    需求:判断用户zhangsan是否存在,不存在就创建并设置密码为123456 1、vi createuser.sh 2、写入: USER_COUNT=`cat /etc/passwd | grep '^zhangsan:' -c` USER_NAME='zhangsan' if [ $USER_COUNT -ne 1 ] then ...

    Linux快速入门以及shell编程基础知识

    其次,Linux系统下的文件权限控制非常灵活,通过chmod命令可以方便修改。另外,理解标准输入输出以及重定向符号“&gt;”“&gt;&gt;”的用法,可以大大提高shell编程效率。 在shell编程方面,我们要学习如何使用变量、条件判断、...

    模拟shell(minishell)(myshell)

    chmod -&gt; 改变文件权限操作 ln -&gt; 创建文件硬链接 ln -s -&gt; 创建文件软连接 ***具有终端输入日记记录功能 其中 Main.c: 主要用于调用Terminal.c以及Command.c中的函数接口 Terminal.c: 用于实现终端的打印及接收...

    linux shell中 if else以及大于、小于、等于逻辑表达式介绍

    比如比较字符串、判断文件是否存在及是否可读等,通常用”[]”来表示条件测试。注意:这里的空格很重要。要确保方括号的空格。笔者就曾因为空格缺少或位置不对,而浪费好多宝贵的时间。if ….; then….elif ….; ...

    fastadmin(V1.0.0.20200506_beta) 前台 getshell(文件上传解析) 漏洞分析1

    2、在 linux 下, is_file() 函数判可用于判断符号链接 3、在 linux 下, is_file 函数会受到权限的影响,当前用户权限不足或父目录

    J-Linux&Shell-W14Linux权限练习

    J-Linux&Shell-W14 Linux权限练习(共10分...能够递归修改文件或目录权限组的命令与选项的组合是(C) A.useradd -G B.chgrp -G C.chgrp -R D.chgrp -g 字符权限设定法中o代表(C) A.属主用户 B.权限组用户 C.其他用户

    Shell之进阶篇(判断语句)

    判断语句一、if 条件判断小 实 验一:小 实 验二:二、case 判断语句小 实 验一:小 实 验二: 进阶篇(一) 执行脚本: 第一种:需要执行权限 在子shell中执行 # ./filename.sh 第二种:不需要执行权限 在...

    大量批处理实用程序例程

    本资源由大量的实用批处理文件组成,删除.txt尾缀名双击即可直接使用,既是学习的模板也可以作为实用程序,如下为文件组成,涉及文件管理,系统,网络,小工具等等: 0-reaname 2000XP停止打印.bat BAT珍藏 dir.bat...

    Linux shell 编程学习笔记

     二:shell 脚本的几种执行方式,我们创建文件 start.sh,并且赋予 执行权限 chomd +x start.sh #然后可以通过以下命令执行 #相对路径,或者绝对路径 ./start.sh #一个脚本范例,&& 表示的是逻辑判断,表示前面...

Global site tag (gtag.js) - Google Analytics