Linux Shell : Test命令参数解析

转自http://blog.chinaunix.net/uid-21961753-id-1810588.html

格式: test conditions

test -n string : string 不为空 
test -z string : string 为空

test int1 -eq int2  : int1 == int 2
test int1 -ne int2  : int1 != int2 
test int1 -gt int2   : int1 > int2 
test int1 -ge int2  : int1 >= int2 
test int1 -lt int2    : int1 < int2 
test int1 -le int2   : int1 <= int2

test -r filename   : 用户对文件filename有读权限
test -w filename  : 用户对文件filename有写权限
test -x filename   : 用户对文件filename有可执行权限
test -f filename   : 文件filename为普通文件
test -d filename  : 文件filename为目录
test -c filename  : 文件filename为字符设备文件
test -b filename  :文件filename为块设备文件
test -s filename  : 文件filename大小不为零
test -t fnumb      : 与文件描述符fnumb(默认值为1)相关的设备是一个终端设备

test ! -s empty   : empty 为空

test -a       : And 
test -o       : Or

注意test命令和[ ]中括号作用是一样的。。

时间: 2024-10-17 04:10:45

Linux Shell : Test命令参数解析的相关文章

linux shell 管道命令(pipe)使用及与shell重定向区别

linux shell 管道命令(pipe)使用及与shell重定向区别 看了前面一节:linux shell数据重定向(输入重定向与输出重定向)详细分析 估计还有一些朋友是头晕晕的,好复杂的重定向了.这次我们看下管道命令了.shell管道,可以说用法就简单多了. 管道命令操作符是:"|",它仅能处理经由前面一个指令传出的正确输出信息,也就是 standard output 的信息,对于 stdandard error 信息没有直接处理能力.然后,传递给下一个命令,作为标准的输入 st

&lt;Docker&gt;01 命令参数解析

最近Docker1.0稳定版发布了,这给paas注入新鲜的血液. Docker是一个功能强大的自动化分布式系统:大规模的Web部署.数据库集群.持续部署系统.私有PaaS.面向服务的体系结构等. Docker是一种增加了高级API的LinuX Container(LXC)技术,提供了能够独立运行Unix进程的轻量级虚拟化解决方案. 它提供了一种在安全.可重复的环境中自动部署软件的方式. 关于Docker运行在Centos的操作,下面由cantgis进行讲解. Cantgis的实验环境都是在Cen

Linux Shell常用命令总结

1.   find       find pathname -options [-print -exec -ok]       让我们来看看该命令的参数:       pathname find命令所查找的目录路径.例如用.来表示当前目录,用/来表示系统根目录.       -print find命令将匹配的文件输出到标准输出.       -exec find命令对匹配的文件执行该参数所给出的shell命令.相应命令的形式为'command' {} \;,注意{}和\:之间的空格,同时两个{}

Linux shell read命令

Linux shell read命令的选项和用法 盗版自:https://www.cnblogs.com/zwgblog/p/5997367.html 1. Read的一些选项 Read可以带有-a, -d, -e, -n, -p, -r, -t, 和 -s八个选项. -a :将内容读入到数值中 echo -n "Input muliple values into an array:" read -a array echo "get ${#array[@]} values i

linux中touch命令参数修改文件的时间戳(转)

linux中touch命令参数不常用,一般在使用make的时候可能会用到,用来修改文件时间戳,或者新建一个不存在的文件,以下是linux中touch命令参数的使用方法: touch [-acm][-r ref_file(参照文件)|-t time(时间值)] file(文件名) example: touch file1.txt 更新file1.txt的存取和修改时间 touch -c file1.txt 如果file1.txt不存在,不创建文件 touch -r ref_file file1.t

linux shell wc 命令

1. 语法与选项 Short Option Long Option Option Description -c –bytes print the byte counts -m –chars print the character counts -l –lines print the newline counts   –files0-from=F read input from the files specified by NUL-terminated names in file F -L –ma

linux shell脚本通过参数名传递参数值

平常在写shell脚本都是用$1,$2....这种方式来接收参数,然而这种接收参数的方式不但容易忘记且不易于理解和维护.Linux常用的命令都可指定参数名和参数值,然而我们怎样才能给自己的shell脚本也采用参数名和参数值这样的方式来获取参数值呢?而不是通过$1,$2这种方式进行获取.下面的例子定义了短参数名和长参数名两种获取参数值的方式.其实是根据getopt提供的特性进行整理而来. #!/bin/sh #说明 show_usage="args: [-l , -r , -b , -w]\ [-

linux中yum命令的解析

yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载.安装.yum提供了查找.安装.删除某一个.一组甚至全部软件包的命令,而且命令简洁而又好记. yum的命令形式一般是如下:yum [options] [command] [package ...] 其中的[opt

Linux Shell 常用命令

Linux Shell 中的反引号,单引号,双引号的区别 1.反引号位 (`):在Linux中起着命令替换的作用.命令替换是指shell能够将一个命令的标准输出插在一个命令行中任何位置. 和$()是一样的.在执行一条命令时,会先将其中的 `` ,或者是$() 中的语句当作命令执行一遍,再将结果加入到原命令中重新执行, 例如:echo `ls` 会先执行 ls 得到 xx.sh等,再替换原命令为:echo xx.sh [[email protected] ~]# echo today is $(d