shell文件测试

文件类型:

-f : 判断文件是否为普通文件
-d :判断是否目录

-b :判断是都块设备文件
-c :判断是都字符设备文件
-S :判断是否socket文件
-p: 判断是否管道文件
-h: 判断是都为符号链接

-L: 文件存在且有符号链接
文件大小存在性:
-e : 判断文件或者目录是否存在
-s : 文件或者或者目录存在且大小大于0

文件读写特性
-r: 判断文件是否有可读权限
-w:判断文件是否具有可写权限
-x: 判断文件是否具有可执行的权限

-g:判断文件是否具有sgid位
-u:判断文件是否有suid位

-k:判断是否设置了粘滞位,文件设置粘滞位后会被写入缓存

文件修改时间:
file1 -nt file2 : 判断file1是否 比file2 新
file1 -ot file2 : 判断file1是否 比file2 旧

实例一:

递归地打印目录

#!/bin/bash 
function readir()
{
for file in `ls $1`
do
   if [ -d $1"/"$file ]
   then
       readir $1"/"$file;
   else
      echo $1"/"$file;
  fi
done
 }
readir /tmp
实例二:

查看目录下的文件或者目录是否具有可读可写可执行的特性

#!/bin/bash 
function filetest()
{
for file in `ls $1`
do
    if [ -r $file -a -w $file -a -x $file ]
    then       
    echo $file;
    fi
done
}
  
filetest /tmp

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值