这期内容当中小编将会给大家带来有关Shell脚本编写的示例分析,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
Shell 是一个 C 语言编写的脚本语言,是一个命令行界面;
它是用户与 Linux 的桥梁,用户输入命令交给 Shell 处理, Shell 将相应的操作传递给内核(Kernel),内核把处理的结果输出给用户。
bash是shell(语言)的一种
第一行指定解释器 #!/bin/bash
在当前终端生成一个子bash去执行脚本(除了source)
脚本执行方法
bash test.sh (/bin/sh 一般软连接向/bin/bash;/bin/sh 相当于 /bin/bash --posix,所以,sh跟bash的区别,实际上就是bash有没有开启posix模式的区别)
./ (添加可执行权限 chmod +x tesh.sh)
source test.sh (不生成子bash在当前bash执行)
普通变量:var=value
临时环境变量:export var=value
作用域:
普通变量:当前shell
临时环境变量:当前shell和子shell (bash)
环境变量文件:
系统级别:
/etc/profile:系统范围内的环境变量和启动文件
/etc/bashrc:系统范围内的函数和别名
$1 - $n
引号内也可引用
shift 可吞噬一个变量,后面的变量前移
运行时:
变量引用:$+变量名 (特殊情况${变量})
在双引号中可识别特殊字符,单引号中不能识别特殊字符保持原样
#
old前面:/——匹配第一个字符串;//——匹配所有字符
${VAR//[^0-9]/}:将VAR中所有非数字替换为空
# 去掉左边,最短匹配;## 最长匹配
% 去掉右边,最短匹配;%% 最长匹配
* 匹配去掉的字符
${VAR:-string} 如果 VAR 变量为空则返回 string
${VAR:+string} 如果 VAR 变量不为空则返回 string
${VAR:=string} 如果 VAR 变量为空则重新赋值 VAR 变量值为 string
${VAR:?string} 如果 VAR 变量为空则将 string 输出到 stderr
&&:前面的为真执行后面的
||:前面的为假执行后面的
$(()):三目运算符:真——返回右边;假——返回左边
if 条件; then 命令 fi
if 条件; then 命令 else 命令 fi
if 条件; then 命令 elif 条件; then else 命令 fi
for 变量名 in 取值列表; do 命令 done
4.3 while
while 条件; do 命令 done
#逐行读取文件内容
break:终止循环
continue:跳出当前循环
case 模式名 in 模式1) 命令 ;; 模式2) 命令 ;; *) 不符合上述时执行命令 esac
上述就是小编为大家分享的Shell脚本编写的示例分析了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。