Shell脚本入门
Shell脚本入门
基础
1 | declare -r TITLE="Page Title" #常量 |
if
1 | x=5 |
常用文件表达式:
表达式 | 为真情况 |
---|---|
-e file | 存在 |
-f file | 普通文件 |
-d file | 目录 |
-r file | 可读 |
-w file | 可写 |
-x file | 可执行 |
常用字符串表达式:
表达式 | 为真情况 |
---|---|
string | 不为空 |
-n string | 长度>0 |
-z string | 长度=0 |
string1==string2或string1=string2 | |
string1!=string2 | |
string1<string2 | |
string1>string2 |
整数表达式:
表达式 | 为真情况 |
---|---|
-eq | |
-ne | |
-le | |
-lt | |
-ge | |
-gt |
组合表达式:
操作 | test | [[]]和(()) |
---|---|---|
and | -a | && |
or | -o | || |
not | ! | ! |
test增强
1 | if [["$INT" =- ^-?[0-9]+$ ]]; then #如果匹配正则表达式 |
控制操作符
1 | [[-d temp]] || mkdir temp |
输入
1 | echo -n "input->" #-n不输出结尾换行符 |
IFS
1 |
|
验证输入
1 | #文件名是否有效 |
while/until
1 | count=1 |
case
1 | case "$REPLY" in |
命令行参数
1 | echo "$#" #命令行传参个数 |
for
1 | for i in {A..D}; do |
字符串与数字
1 | echo ${foo:-"substitute value if unset"} |
数组
1 | a[1]=foo |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 The Blog of Monoceros406!