位置参数及操作符号

简介: 特殊字符对应的处理参数: 参数说明$0当前执行的脚本文件名,若全路径执行,则显示脚本路径$n当前执行脚本的第n个参数值,若n>9,则需写成${10}$#当前传参总个数$$脚本运行的当前进程ID号,用例:当一个进程重复启动时自动将前面的进程杀死,避免...

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

参数

说明

$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]}

获取数组单个元素长度

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

作者: 罗穆瑞

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

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

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

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

目录
相关文章
|
7月前
|
索引 容器
06-数据容器str(字符串)-字符串的下标索引/字符串无法修改/查找字符串下标初始值/字符串的替换/字符串的分割/字符串去除前后空格/统计字符串的数量/字符串的循环遍历/对字符串进行分割
06-数据容器str(字符串)-字符串的下标索引/字符串无法修改/查找字符串下标初始值/字符串的替换/字符串的分割/字符串去除前后空格/统计字符串的数量/字符串的循环遍历/对字符串进行分割
|
7月前
用几种方法输出二维数组各元素的值。
用几种方法输出二维数组各元素的值。
104 4
题目:下列给定程序中函数fun的功能是:从p所指字符串中找出ASCII码值最大的字符,将其放在第一个位置上,并将该字符前的原字符向后顺序移动。
题目:下列给定程序中函数fun的功能是:从p所指字符串中找出ASCII码值最大的字符,将其放在第一个位置上,并将该字符前的原字符向后顺序移动。
109 0
|
编译器 C语言 C++
学C的第十六天【操作符详解:9. 条件操作符;10. 逗号表达式;11. 下标引用,函数调用和结构函数;12.表达式求值:整型提升、算术转换、操作符的属性;练习:使用函数完成整型函数的打印、元素逆置】-2
12.表达式求值 1. 表达式求值的顺序一部分是由操作符的优先级和结合性决定。 2. 有些表达式的操作数在求值的过程中可能需要转换为其它类型。
112 0
定义一个包含10个整数元素的数组,初始值由用户给定。找出数组中的最大数并连同下标一起输出。
定义一个包含10个整数元素的数组,初始值由用户给定。找出数组中的最大数并连同下标一起输出。
240 0
20.从入门到精通:参数 位置参数 关键字参数 默认参数 匿名函数 return 语句 强制位置参数
20.从入门到精通:参数 位置参数 关键字参数 默认参数 匿名函数 return 语句 强制位置参数
C语言函数可以修改数组的值吗
C语言函数可以修改数组的值吗
|
C语言 UED
[解题报告]【第29题】给定一个 n 个元素的数组, 删除数组第一个位置上的数,然后再输出整个数组
[解题报告]【第29题】给定一个 n 个元素的数组, 删除数组第一个位置上的数,然后再输出整个数组