• linux shell 学习笔记--文件测试符


    1. 文件测试操作
    ----------------
    返回true 如果...
    -e 文件存在
    -a 文件存在
    这个选项的效果与-e 相同.但是它已经被弃用了,并且不鼓励使用
    -f file 是一个regular 文件(不是目录或者设备文件)
    -s 文件长度不为0
    -d 文件是个目录
    -b 文件是个块设备(软盘,cdrom 等等)
    -c 文件是个字符设备(键盘,modem,声卡等等)
    -p 文件是个管道
    -h 文件是个符号链接
    -L 文件是个符号链接
    -S 文件是个socket
    -t 关联到一个终端设备的文件描述符
    这个选项一般都用来检测是否在一个给定脚本中的 stdin[-t0]或[-t1]是一个终端
    -r 文件具有读权限(对于用户运行这个test)
    -w 文件具有写权限(对于用户运行这个test)
    -x 文件具有执行权限(对于用户运行这个test)
    -g set-group-id(sgid)标志到文件或目录上
    如果一个目录具有 sgid 标志,那么一个被创建在这个目录里的文件,这个目录属于创建
    这个目录的用户组,并不一定与创建这个文件的用户的组相同.对于workgroup 的目录
    共享来说,这非常有用.见<<UNIX 环境高级编程中文版>>第58 页.
    -u set-user-id(suid)标志到文件上
    如果运行一个具有 root 权限的文件,那么运行进程将取得root 权限,即使你是一个普通
    用户.[1]这对于需要存取系统硬件的执行操作(比如pppd 和cdrecord)非常有用.如果
    没有 suid 标志的话,那么普通用户(没有root 权限)将无法运行这种程序.
    见<<UNIX 环境高级编程中文版>>第58 页.
    -rwsr-xr-t 1 root 178236 Oct 2 2000 /usr/sbin/pppd
    对于设置了 suid 的文件,在它的权限标志中有"s".
    -k 设置粘贴位,见<<UNIX 环境高级编程中文版>>第65 页.
    对于"sticky bit",save-text-mode 标志是一个文件权限的特殊类型.如果设置了这
    个标志,那么这个文件将被保存在交换区,为了达到快速存取的目的.如果设置在目录
    中,它将限制写权限.对于设置了sticky bit 位的文件或目录,权限标志中有"t".
    drwxrwxrwt 7 root 1024 May 19 21:26 tmp/
    如果一个用户并不时具有 stick bit 位的目录的拥有者,但是具有写权限,那么用户只
    能在这个目录下删除自己所拥有的文件.这将防止用户在一个公开的目录中不慎覆盖
    或者删除别人的文件,比如/tmp(当然root 或者是目录的所有者可以随便删除或重命名
    其中的文件).
    -O 你是文件的所有者.
    -G 文件的group-id 和你的相同.
    -N 从文件最后被阅读到现在,是否被修改.
    f1 -nt f2
    文件 f1 比f2 新
    f1 -ot f2
    f1比f2 老
    f1 -ef f2
    f1和f2 都硬连接到同一个文件
  • 相关阅读:
    公平锁和非公平锁
    读写锁StampedLock的思想
    线程工作窃取算法
    关于SQL注入的问题以及解决方法
    简单工厂模式、工厂模式和抽象工厂模式
    RestFul的无状态规则详解
    Identity Server 4 中文文档(v1.0.0) 目录
    第3章 支持和规范
    第2章 术语
    第1章 背景
  • 原文地址:https://www.cnblogs.com/zendu/p/4991024.html
Copyright © 2020-2023  润新知