shell 文件测试 蛮全的】的更多相关文章

文件状态测试 -b filename : 当filename 存在并且是块文件时返回真(返回0)-c filename : 当filename 存在并且是字符文件时返回真-d pathname : 当pathname 存在并且是一个目录时返回真-e pathname : 当由pathname 指定的文件或目录存在时返回真-f filename : 当filename 存在并且是正规文件时返回真-g pathname : 当由pathname 指定的文件或目录存在并且设置了SGID 位时返回真-h…
---恢复内容开始--- 文件测试表达式    -f 文件存在且为普通文件     -d 文件存在且为目录文件    -s 文件大小不为0则真    -e 文件存在则真        -r 文件存且可读  #文件属性对于root有时不好用    -w 写    -x 执行    -L 存在且为链接文件    f1 -nt f2 f1比f2新则为真    f1 -ot f2 f1比f2旧则为真    这些操作符可用于[[]],[],test几乎通用,更多操作符查看man test.        …
文件测试运算符 文件测试运算符用于检测 Unix 文件的各种属性. 属性检测描述如下: 操作符 说明 举例 -b file 检测文件是否是块设备文件,如果是,则返回 true. [ -b $file ] 返回 false. -c file 检测文件是否是字符设备文件,如果是,则返回 true. [ -c $file ] 返回 false. -d file 检测文件是否是目录,如果是,则返回 true. [ -d $file ] 返回 false. -f file 检测文件是否是普通文件(既不是目…
shell运算符有很多,关系运算符,算数运算符,布尔运算符,字符串运算符和文件测试运算符 1,算术运算符 原声bash 不支持简单的算术运算,可以使用expr 工具 两点注意: 表达式和运算符之间要有空格,例如 2+2 是不对的,必须写成 2 + 2,这与我们熟悉的大多数编程语言不一样. 完整的表达式要被 ` ` 包含,注意这个字符不是常用的单引号,在 Esc 键下边. #!/bin/basha=10b=20rst=`expr 2 + 2`echo '2+2 =' ${rst} rst=`exp…
注意事项: (1)bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用: (2)完整的表达式要被 ` ` 包含,注意这个字符不是常用的单引号,在 Esc 键下边. (3)条件表达式要放在方括号之间,变量与符号之间必须以空格隔开,命令才可以识别: (4)乘号(*)在shell中有特殊含义,作为乘法符号时,要在*前边必须加反斜杠(\)才能实现乘法运算: (5)关系运算符采用的是英文字母的缩写,等于(-eq,equal),不等于(-ne,not equ…
shell脚本中文件测试 author:headsen chen  2017-10-17  14:35:19 个人原创,转载请注明作者,否则 依法追究法律责任 [ -f  filename  ]   ,文件filename存在且为普通文件时,返回真(0) [ -d  filename ]  ,文件存在且为目录,返回真. [ -L filename  ],文件存在且为链接文件时,返回真 [ -e  filename ] , 文件或目录存在,返回真. [ -x  filename  ], 文件或目录…
shell脚本之文件测试操作符及整数比较符 原文:http://www.cnblogs.com/Steward-Xu/p/6722592.html 一.文件测试操作符: 在书写测试表达式是,可以使用一下的文件测试操作符. 更多的参数可以help test或者man bash 二.字符串测试操作符: 字符串测试操作符的作用:比较两个字符串是否相同.字符长度是否为0,字符串是否为null(注:bash区分长度字符串和空字符串) “=”比较两个字符串是否相同,与“==”等价,如:if [“$a”=“$…
1.文件测试表达式的用法 我们在编程时处理一个对象时,需要对对象进行测试,只有符合要求的才采取操作处理:这样做的好处是避免程序出错以及无所畏的消耗系统资源,这个测试的对象可以是文件.字符串.数字等. 下表为常用文件操作符 特别说明:这些操作符对于[[ ]].[].test几乎是通用的,更多的操作可以用man test 查看.上表中的-e只要是有文件就行不管是文件还是目录. 2.文件测试表达式举例 2.1 普通文件(测试文件类型) 2.2 目录文件(测试文件类型) 2.3 测试文件属性 2.4 测…
一. 数字测试 格式:n1  -op  n2 测试操作op: eq/ne/le/ge/lt/gt    -->    等于/不等于/小于等于/大于等于/小于/大于 1. 数字比较可以使用特殊的(())操作符,用法更接近于C语言,见数字测试. 二. 字符串测试 s1 = s2 #s1与s2是否相同 s1 != s2  #s1与s2是否不相同 s1 < s2 #s1是否小于s2 s1 > s2 #s1是否大于s2 -n s1 #s1长度是否大于0 -z s1  #s1长度是否为0 1. 字符…
整数比较方法一:[  ] 或 [[  ]]   (1) 此方法需要使用整数比较运算符.[标注:equal 等于   greater 大于   less-then 小于] (2) 使用时一定要注意前后一定要有的空格:[  num1 -eq num2  ]   [[  num1 -eq num2  ]] 方法二:((  ))  (1) 此方法使用的是类似数学运算比较的运算符:==  >=  <=  != # a=2;b=3 # [ $a -eq $b ];echo $? 1 # [ $a -lt…
文件测试是指测试某一个文件或者目录是否存在 测试文件格式[ 操作符 目录或者文件 ]    注意左括号和操作符之间有一个空格,文件或者目录 与右边的括号之间也有一个空格. -d 测试是否为目录 -e 测试文件或者目录是否存在 -f 测试是否为文件 -r 测试当前用户是否对文件有读权限 -w 测试当前用户是否对文件有写权限 -x 测试当前用户是否对文件有执行权限 -L 测试是否为符号链接文件 测试的结果可以使用$?来获取,$?表示上一条命令的执行是否成功  或者  判断条件是否成立:   如果运行…
. 文件测试操作 ---------------- 返回true 如果... -e 文件存在 -a 文件存在 这个选项的效果与-e 相同.但是它已经被弃用了,并且不鼓励使用 -f file 是一个regular 文件(不是目录或者设备文件) -s 文件长度不为0 -d 文件是个目录 -b 文件是个块设备(软盘,cdrom 等等) -c 文件是个字符设备(键盘,modem,声卡等等) -p 文件是个管道 -h 文件是个符号链接 -L 文件是个符号链接 -S 文件是个socket -t 关联到一个终…
一.文件测试操作符: 在书写测试表达式是,可以使用一下的文件测试操作符. 更多的参数可以help test或者man bash 二.字符串测试操作符: 字符串测试操作符的作用:比较两个字符串是否相同.字符长度是否为0,字符串是否为null(注:bash区分长度字符串和空字符串) “=”比较两个字符串是否相同,与“==”等价,如:if [“$a”=“$b”],其中$a这样的变量最好用””括起来,因为如果中间有空格等就会出错.更好的方法是if [“${a}”=“${b}”]. “!=”比较两个字符串…
文件测试运算符 ================摘自菜鸟教程================= 文件测试运算符用于检测UNIx文件的各种属性: 操作符 说明 例子 -b 检测文件是否是块设备文件,如果是,返回true [ -b $file ] -c 检测文件是否是字符设备文件,如果是,返回true [ -c $file ] -d 检测文件是否是目录,如果是,返回true [ -d $file ] -f 检测文件是否是普通文件(既不是目录,也不是设备见文件) [ -f $file ] -g 检测文…
文件测试判断条件 -e FILE:测试文件是否存在 -f FILE:测试文件是否为普通文件 -d FILE:测试指定路径是否为目录 -r FILE:测试当前用户对指定文件是否有读权限 -w FILE:测试当前用户对指定文件是否有写权限 -x FILE:测试当前用户对指定文件是否有执行权限 Example: [ -e /etc/passwd ] [ -x /etc/shadow ] 多分支if语句 if 判断条件1:then statement1 ... elif 判断条件2:then state…
条件测试操作 在bash的各种流程控制结构中通常要进行各种测试,然后根据测试结果执行不同的操作,有时也会通过与if等条件语句相结合,让我们可以方便的完成判断. 语法格式 test 选项 文件名或目录名 [ 选项 文件名或目录名 ] [[ 选项 文件名或目录名 ]] [语法说明] 格式1: test <测试表达式> 格式2: [ test<测试表达式> ] 格式3: [[ test<测试表达式> ]] 说明: 格式1和格式2是等价的.格式3是扩展的test命令,有网友推荐…
shell条件测试可以通过以下两种方式: test   参数    测试内容 [ 参数  测试内容 ] 一.测试文件类型: test  -e   文件名          (测试文件是否存在) [ -e  文件名 ]                测试文件是否存在,注意中括号两边的空格 test -f   文件名             判断是否为普通文件 test -d   文件名            判断是否为目录 test -b   文件名            判断是否为块设备文件 t…
一.预备知识 1.shell的作用   2.常识 (1)Tab键自动补全   使用Terminal时,输入命令的前几个字母,敲tab会自动补全命令或文件名.目录等. 好处:操作速度更快:不容易出错: (2)清屏命令 Ctrl + L 或 输入命令clear  (3)命令历史:  执行:history      清除历史:history -c         技巧1:!num  命令直接打开历史命令,num为history查看的序列         技巧2:!XX     命令查看历史命令中最后一…
在shell中通过test命令或者中括号[]可以进行文件测试以及其它类型的测试,例如判断文件是否存在,比较操作是否为真等等.perl作为更强大的文本处理语言,它也有文件测试类表达式,而且和shell的文件测试用的字母符号都类似. perl中测试文件的属性来源是perl的内置函数stat,它可以获得文件的13项属性.后文会介绍该函数. 测试符 测试符号都是短横线开头,加一个字母.例如,测试文件是否存在-e "a.log".在可能产生歧义的情况下,这些测试符可以用括号包围,例如:(-e &…
一.概述 Shell 和其他编程语言一样,支持多种运算符,包括: 算数运算符 关系运算符 布尔运算符 字符串运算符 文件测试运算符 二.算术运算符 原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用. expr 是一款表达式计算工具,使用它能完成表达式的求值操作. #!/bin/bash val=` + ` echo "两数之和为 : $val" 输出 两数之和为 : 两点注意: 表达式和运算符之间要有空格,例如 2+2 是不对的…
shell中条件测试的三种格式: 格式1: test 条件表达式格式2: [ 条件表达式 ]格式3: [[ 条件表达式 ]] 使用test: [root@host- ~]# test -f file && echo true || echo false false [root@host- ~]# touch file [root@host- ~]# test -f file && echo true || echo false true [root@host- ~]# ma…
1.文件测试操作 返回 true 如果... -e 文件存在 -a 文件存在 这个选项的效果与-e 相同.但是它已经被弃用了,并且不鼓励使用 -f file 是一个 regular 文件(不是目录或者设备文件) -s 文件长度不为 -d 文件是个目录-r 文件具有读权限(对于用户运行这个 test) -w 文件具有写权限(对于用户运行这个 test) -x 文件具有执行权限(对于用户运行这个 test) 2.整数比较 -eq 等于,如:if [ "$a" -eq "$b&qu…
1.文件比较运算符 -e filename 如果 filename 存在,则为真 [ -e /var/log/syslog ] -d filename 如果 filename 为目录,则为真 [ -d /tmp/mydir ] -f filename 如果 filename 为常规文件,则为真 [ -f /usr/bin/grep ] -L filename 如果 filename 为符号链接,则为真 [ -L /usr/bin/grep ] -r filename 如果 filename 可读…
[SHELL水平测试] [OVERVIEW 篇] 有很多种 shell, 你熟悉几种? 各个 shell 的 home page 在那里? 为什么说 zsh 是目前为止功能最为强大的 shell. 为什么说 pdksh 功能较弱? ksh88 与 ksh93 有何区别? 为什么 shell 编程最好用 ksh? 你的系统都有哪些 shell? 版本是多少? 你知道 POSIX 吗?最新版本是多少?和你的 shell 有什么关系? /sbin/sh 和 /bin/sh 有何区别? 你分析过 100…
1,合并+去重+分割 转载:shell 文件合并,去重,分割 - kakaisgood - 博客园 (cnblogs.com) 第一:两个文件的交集,并集前提条件:每个文件中不得有重复行1. 取出两个文件的并集(重复的行只保留一份)2. 取出两个文件的交集(只留下同时存在于两个文件中的文件)3. 删除交集,留下其他的行1. cat file1 file2 | sort | uniq > file32. cat file1 file2 | sort | uniq -d > file33. cat…
本文是Linux Shell系列教程的第(十七)篇,更多Linux Shell教程请看:Linux Shell系列教程 通过文件包含,可以引用其他文件的内容,也可以将复杂内容分开,使程序结构更加清晰. 所以高级语言都支持文件包含或者包的引用,Shell当然也支持,接下来就为大家介绍下Shell文件包含的相关知识. 一.Shell文件包含格式 Shell文件包含的格式如下,使用点号“.”+文件名包含: . filename 或者source+文件名: source filename 二.Shell…
/******************************************************************************** * Android AIDL自动生成Java文件测试 * 说明: * 知道有aidl这东西已经挺久了,但是一直没有花时间来系统了解一下其工作机制,现在 * 花点时间一点一点验证一下其功能. * * 2016-5-8 深圳 南山平山村 曾剑锋 ***********************************************…
轻松学习Linux之Shell文件和目录属性详解 轻松学习Linux之理解Sitcky 轻松学习Linux之理解umask 轻松学习Linux之理解SUID&SGUID 本系列多媒体教程已完成的博文: 1.轻松学习Linux之VI编辑器的使用 2.轻松学习Linux之AWK使用初步 3.轻松学习Linux之理解Shell的硬链接与软连接 4.轻松学习Linux之自动执行任务 5.轻松学习Linux系统安装篇之fdisk命令行工具的使用  6.轻松学Linux之使用转义字符 7.轻松学习Linux…
rsyslog 测试(rsyslog 必须yum 安装uat-web02:/root# rpm -qa | grep rsyslog rsyslog-8.21.0-1.el6.x86_64) //读取单个文件测试: 客户端发送: uat-web02:/var/log/nginx# echo "zjzc-111222333444qwe" >>scan.log uat-web02:/var/log/nginx# 服务端接收: zjtest7-frontend:/data/sca…
和其他语言一样,Shell 也可以包含外部脚本.这样可以很方便的封装一些公用的代码作为一个独立的文件. Shell 文件包含的语法格式如下: . filename # 注意点号(.)和文件名中间有一空格 或 source filename 实例 test1.sh 代码如下: #!/bin/bash url="http://www.runoob.com" test2.sh 代码如下: #!/bin/bash #使用 . 号来引用test1.sh 文件 . ./test1.sh # 或者使…