大数据学习之路----linux系统的shell脚本编程(一)
一、什么是linux系统
linux系统诞生于1991 年10 月5 日,一直以开源的方式存在,经过很多的程序员的开发演变成现在使用的linux系统,一个是企业版,一个是个人版
二、shell编程开始
shell编程是类似于我们学习的C语言、C++、Java、PHP…等开语言,也有他自己的属性、方法、运算方式
三、变量
shell脚本定义变量和Java的变量定义不一样,Java遵从‘万物皆对象’的原则,把所有我们需要操作的元素定义为对象,然后进行一系列的操作及运算,而shell脚本编程则是以read来读取数据,最重要的一点就是shell的元素没有类型,所有的定义的变量可以定义为任何类型,这里我就拿C语言和shell脚本编程进行对比,毕竟所有的语言都是从C语言演变过来的,所以有很多相似之处。
shell变量有三种
1.本地变量
例:name=god
普通的变量定义,直接将等号后面的赋值给前面的变量
2.局部变量
只能写在方法内的变量,和Java中的局部变量一样 : local 变量
3.环境变量
环境变量使用exprot定义 我们在配置系统环境变量中会见到
4.特殊变量
$$----------------shell当前的进程ID号
$#----------------获取参数
$*----------------获取某一个位置的参数($1 $2…)通过{}来确定一个整体
$@ ------------获取某一个位置的参数 等同于上一条
$?-------------输出上一条指令的执行状态 (0为执行正确,其他为错误)
$BASHPID-----打印当前进程的实际id
四、运算符
shell脚本编程同样和C语音一样拥有运算符,也会结合变量创建出表达式
1.算数运算符
与C语言一样
加、减、乘、除、符号没变,但是在我们运算时乘法需要在算数表达式中进行转译,否则被视为识别全部符号
算数表达式
① $((算数表达式))
② ’ expr 算数表达式 ’ 注:表达式中操作数及运算符之间要有空格,而且要使用命令引用
2.条件运算符
-eq 检测两个数是否相等,相等返回true
-ne 检测两个数是否不相等,不相等返回true
-gt 检测左边的数是否大于右边的,如果是,则返回true
-lt 检测左边的数是否小于右边的,如果是,则返回true
-ge 检测左边的数是否大于等于右边的,如果是,则返回true
-le 检测左边的数是否小于等于右边的,如果是,则返回true
五、控制循环
shell脚本语言与C语言一样,也拥有流程控制,但是不能为空
1.if判断
if commands
then
commands
fi
如果有其他条件需要再次进行判断
if commands
then
elif commands
then
commands
else commands
fi
2.case 选择判断
shell脚本编程与C语言中的switch…case不一样,它是以case开头,选项是以“选项)”来进行运算的
case 变量 in
1)
commands
;;
…
esac
3.while循环
while commands
do
commands
done
无限循环
while :
do
commands
done
4.for循环(三种方法)
第一种:
for i in 1 2 3 4 5
do
commands
done
第二种:
for i in ‘seq 1 10’ 表示i的最小值是1、最大值是10 需要在命令中写递增
do
commands
done
第三种:
for ((i=0;i<10;i++))
do
commands
done
无线循环
for((; ;))
do
commands
done
六、总结
shell脚本编程会在以后我们对于大型数据处理起到一个关键的作用,而且它也有很多与C语言相似的地方,所以只要你学会C语言,它其实并不难,掌握其语法就很简单。
- 大数据学习之路----linux系统的shell脚本编程案例(一)
- 【Linux 系统编程】shell 脚本基础学习(一)
- 【Linux 系统编程】shell 脚本基础学习之函数(五)
- Liunx 命令行与shell脚本编程大全 第八章学习笔记(Linux系统的包管理基础)
- Linux学习-shell脚本编程基础之处理用户输入
- Linux学习-高级shell脚本编程(一)函数的妙用
- Linux系统命令及Shell脚本学习笔记四:Linux文件系统
- Linux系统下shell脚本语言学习手册指南
- Linux系统命令及Shell脚本学习笔记五:字符处理
- [linux] shell脚本编程-xunsearch安装脚本学习
- Linux学习第九节课-shell脚本编程
- Linux-Shell脚本编程-学习-2-Linux基本命令
- Linux命令与shell脚本编程学习笔记-16创建函数
- Linux系统shell脚本编程(五)
- Shell脚本编程学习入门 02 分类: arm-linux-Ubuntu 2013-08-30 17:45 427人阅读 评论(0) 收藏
- linux学习之路之shell脚本实例
- Shell脚本编程——了解你的Linux系统必须掌握的20个命令
- Linux学习-shell脚本编程基础(节选)
- Linux命令行与Shell脚本编程[学习笔记1]
- Linux-Shell脚本编程-学习-6-Shell编程-使用结构化命令-文件比较-case编程