位置参数及操作符号

特殊字符对应的处理参数:

参数

说明

$0

当前执行的脚本文件名,若全路径执行,则显示脚本路径

$n

当前执行脚本的第n个参数值,若n>9,则需写成${10}

$#

当前传参总个数

$$

脚本运行的当前进程ID号,用例:当一个进程重复启动时自动将前面的进程杀死,避免重复启动

$!

后台运行的最后一个进程的ID号

$*

以一个字符串显示所有向脚本传递的参数

$@

所有位置参数内容,将每个参数视为单个字符串传递

$?

显示最后命令的退出状态,0表示正常,其他任何值表示有错误

常用文件测试操作符号:

符号

说明

-f 文件,--file

文件存在且是普通文件则真

-d 文件,--directory

文件存在且是目录文件则真

-s 文件,--size

文件存在且大小不为0则真

-e 文件,--exist

文件存在则真

-r 文件,--read

文件存在且可读则真

-w 文件,--write

文件存在且可写则真

-x 文件,--executable

文件存在且可执行则真

-L 文件,--link

文件存在且为链接文件则真

f1 -nt f2,--newer than

文件f1比文件f2新则真,根据文件修改时间计算

f1 -ot f2,--older than

文件f1比文件f2旧则真,根据文件修改时间计算

字符串测试操作符:

操作符

说明

-z "字符串",--zero

若串长度为0则真

-n "字符串",--no zero

若串长度不为0则真

"串1"="串2"

若串1等于串2则真,可使用"=="代替"="

"串1"!="串2"

若串1不等于串2则真,不能用"=="代替"="

注:

1.以上表格中的字符串测试操作符号务必要用""引起来;

2.比较符号两端有空格。

eg:[ -n "$myvar"]

整数二元比较操作符:

[]及test中使用的比较符

(())及[[]]中使用的比较符

说明

-eq

==或=

equal,相等

-ne

!=

not equal,不相等

-gt

>

greater than,大于

-ge

>=

greater equal,大于等于

-lt

<

less than,小于

-le

<=

less equal,小于等于

逻辑连接符:

[]及test中使用的逻辑操作符

[[]]中使用的逻辑操作符

说明

-a

&&

and与,两端都为真,则真

-o

||

or或,两端有一个为真则真

not非,相反则为真

访问数组元素:

${array[0]}

访问数组中第一个元素

${array[@]}

访问数组所有元素;等同于${array[*]}

${#array[@]}

统计数组元素的个数

${!array[@]}

获取数组元素的索引

${array[@]:1}

从数组下标1开始

${array[@]:1:2}

从数组下标1开始,访问两个元素

lengthn=${#array[n]}

获取数组单个元素长度

-------------------------------------------------------------

作者:罗穆瑞
出处:http://www.cnblogs.com/kazihuo/

转载请保留此段声明,且在文章页面明显位置给出原文链接,谢谢!

------------------------------------------------------------------------------

如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!

------------------------------------------------------------------------------

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/453405.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python变量命名可以有特殊符号吗,和孩子一起学习python之变量命名规则

下面是关于变量名(也称为标识符)的一些规则必须以一个字母或一个下划线字符开头。后面可以使用一个字母、数字或下划线字符的序列&#xff0c;长度不限。字母可以是大写或小写&#xff0c;大小写是不同的。也就是说&#xff0c;Ax不同于aX。数字可以是从0到9(包括0到9)的任意数…

C语言中*和

(一) 在定义时&#xff0c;* 是一个标识符&#xff0c;声明该变量是一个指针&#xff0c;比如说int *p; 那p就是一个指向int型的指针&#xff1b; 在调用时&#xff0c; &#xff08;1&#xff09;*p是指指针p指向的那个变量&#xff0c;比如说之前有int a5&#xff1b;int …

IT人的好习惯和不良习惯总结

好习惯&#xff1a; 细节一&#xff1a;在电脑旁放上几盆植物&#xff0c;传说仙人掌可以有效地吸收辐射&#xff0c;但是会扎到人&#xff0c;而且有没效果也没科学根据&#xff0c;不推荐&#xff1b;其实只要是绿色植物就可以&#xff0c;植物可以让你多点氧气&#xff0c;保…

【BZOJ 3326】[Scoi2013]数数 数位dp+矩阵乘法优化

挺好的数位dp……先说一下我个人的做法:经过观察,发现这题按照以往的思路从后往前递增,不怎么好推,然后我就大胆猜想,从前往后推,发现很好推啊,维护四个变量,从开始位置到现在有了i个数 f[i]:所有数的所有未包含最后一位的子串的和 s[i]:所有数的所有后缀子串的和 c[i]:所有数的…

zookeeper伪集群(在一台机器上集群)

2019独角兽企业重金招聘Python工程师标准>>> 创建一下的目录结构zookeeper-3.4.10是你下载的zookeeper的解压包 /zookeeper_cluster----/server_one|---/data|myid(文件)|---/datalog|---/zookeeper-3.4.10|---/bin|---/conf|---zoo.cfg|---..... |---/....----/ser…

mongo的php查询,使用PHP进行简单查询的mongo查询速度慢

我有一个非常简单的使用PHP执行的Mongo Query。我相信查询执行得非常快&#xff0c;因为当我在终端上运行它时&#xff0c;它几乎可以立即完成&#xff0c;并且当我解释()时&#xff0c;它表明它正在1-2ms内执行。但是&#xff0c;当我去迭代游标并将内容放入数组时&#xff0c…

顺序存储结构和链式存储结构的优缺点

&#xff08;一&#xff09;顺序存储结构和链式存储结构的优缺点比较&#xff0c;以及使用情况。 1 优缺点 ① 顺序存储时&#xff0c;相邻数据元素的存放地址也相邻&#xff08;逻辑与物理统一&#xff09;&#xff1b;要求内存中可用存储单元的地址必须是连续的。 优点&…

大话软件开发与开车的共同点

昨天路上开车&#xff0c;突然有了这个想法&#xff0c;做软件开发与开车&#xff0c;竟然有这么多的相似之处&#xff0c;大致整理了一下思路&#xff0c;和大家分享一下。 一、目的 开车的目的有3个&#xff0c;第一是为了让自己到底目的地(上班族)&#xff0c;第二是为了兜…

Spring核心接口之Ordered

一、Ordered接口介绍Spring中提供了一个Ordered接口。从单词意思就知道Ordered接口的作用就是用来排序的。Spring框架是一个大量使用策略设计模式的框架&#xff0c;这意味着有很多相同接口的实现类&#xff0c;那么必定会有优先级的问题。于是Spring就提供了Ordered这个接口&a…

将本地代码上传至github

注册github账号 https://github.com/ 安装git工具 https://git-for-windows.github.io 1.在github中创建一个项目 2.填写相应信息&#xff0c;点击create Repository name: 仓库名称 Description(可选): 仓库描述介绍 Public, Private : 仓库权限&#xff08;公开共享&#xff…

禅道 php api,云禅道有API的方式可以获取数据吗

api相关手册&#xff1a;api接口查看&#xff0c;可以本地搭建和云禅道相同版本的禅道&#xff0c;然后admin 后台 二次开发 api&#xff0c;可以查看接口列表。api调用步骤PATH_INFO方式1、访问 http://x.com/api-getsessionid.json获取禅道session信息2、使用上一步获取的ses…

链表的头结点和尾节点的用处

某些情况下设置尾指针的好处 尾指针是指向终端结点的指针&#xff0c;用它来表示单循环链表可以使得查找链表的开始结点和终端结点都很方便&#xff0c;设一带头结点的单循环链表&#xff0c;其尾指针为rear&#xff0c;则开始结点和终端结点的位置分别是rear->next->ne…

经验从哪里来?从痛苦中来!

1 刚才发博客&#xff0c;写的几百字丢失&#xff0c;让我知道下次一定要在记事本里写好&#xff0c;再复制过来&#xff0c;避免丢失了 2 程序忘记备份&#xff0c;辛苦一个多月的东西没有了&#xff0c;只能找到1月前的版本&#xff0c;让我知道了&#xff0c;重要的东西必须…

oracle 加全文索引,Oracle创建全文索引

1、创建表空间&#xff0c;有必要将物理文件设置大一些2、创建基于这个表空间的用户3、创建需要建立全文索引的表4、用管理员帐户为使用这用户开发ctx_ddl权限grant execute on ctx_ddl to useer;5、创建适合的lexer(解析器)exec ctx_ddl.create_references(my_lexer,basic_le…

机器视觉系统需要考虑的十个问题

为了使用户在选择一款机器视觉系统时应该考虑的关键的、基本的特性方面提供指导。下面是选择一款机器视觉系统时要优先考虑的十个方面&#xff1a; 1. 定位器 对象或特征的精确定位是一个检测系统或由视觉引导的运动系统的重要功能。传统的物体定位采用的是灰度值校正来识别物体…

严蔚敏数据结构:链表实现一元多项式相加

一、基本概念 1、多项式pn(x)可表示成: pn(x)a0a1xa2x2…anxn。 listP{&#xff08;a0&#xff0c;e0&#xff09;&#xff0c;(a1&#xff0c;e1)&#xff0c;(a2&#xff0c;e2)&#xff0c;…&#xff0c;(an&#xff0c;en) }。在这种线性表描述中&#xff0c;各个结点…

Java二十三设计模式之------工厂方法模式

一、工厂方法模式&#xff08;Factory Method&#xff09; 工厂方法模式有三种 1、普通工厂模式&#xff1a;就是建立一个工厂类&#xff0c;对实现了同一接口的一些类进行实例的创建。首先看下关系图&#xff1a; 举例如下&#xff1a;&#xff08;我们举一个发送邮件和短信的…

无法转化为项目财富的技术或功能就是垃圾

技术人员可能有个习惯&#xff0c;也可以叫通病&#xff0c;发现一个新技术&#xff0c;或者新的想法&#xff0c;会把某个现有的东西做的更好&#xff0c;或者可以增加某个功能让系统看上去更完美。 如果这是一个产品&#xff0c;那么大家都会鼓励你去做&#xff0c;如果我们…

ibatis oracle function,IBATIS调用oracle function(函数)的步骤实例

IBATIS调用oracle function(函数)的方法实例引用create or replace function getClassifiedCode(p_planCode in varchar2 -- 险种代码,p_usageAttributeCode in varchar2 -- 使用性质代码,p_ownershipAttributeCode in varchar2 -- 所属性质代码,p_vehicleTypeCode in varchar2…

一元多项式乘法算法

我认为大致算法应该是这样的: 首先准备一个空的链表L。利用第一个多项式的的指针所指的节点数值乘以多项式二的每一项&#xff0c;将结果保存在链表L中。 然后将指向该节点的指针后移到下一个节点继续进行乘法运算&#xff0c;将所得结果加到L中&#xff08;这个操作已经在一…