Linux 之大数据定制shell编程
shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求 以便运行程序的界面系统级程序,用户可以用shell来启动、挂起、停止甚至编写一些程序。
shell脚本执行
**(1)**编写shell脚本
vim hello.sh
打开并编辑hello.sh 如果没有会创建一个hello.sh
编写格式:
编辑完成后 按ESC 输入:wq 回车退出(前面linux实操篇 学习过的命令),查看hello.sh 脚本的执行权限,发现创建者并没有执行权限,那如何执行hello.sh呢??
方法一
修改执行权限,加上权限‘x’
chmod u+x hello.sh
可以看出,加了执行权限的hello.sh变成了绿色可执行的
用相对路径 ./hello.sh 执行或者绝对路径root/shcode/hello.sh 执行都可以
方法二
不修改文件的执行权限,直接执行shell脚本,在前面加一个sh
sh hello.sh
运行结果:
Shell变量
shell变量的定义:
基本语法:
1、定义变量:变量名=值
2、撤销变量:unset 变量
3、声明静态变量:readonly变量 (这个变量不能用unset撤销)
定义变量A,以及用echo语句输出的三种写法:
执行结果:
定义静态变量B,并尝试用unset撤销
会报错提示静态变量B不能unset
定义变量的规则
- 变量名称可以由字母、数字和下划线组成,但不能以数字开头。
- 等号两侧不能有空格
- 变量名称一般为大写,这是一个规范(也可不)。
将命令的返回值赋给变量
- A=date 反引号,运行里面的命令,并把结果返回给变量A
- A=$(date)等价于反引号
C=`date`
D=$(date)
echo "C=$C"
ehco "D=$D"
运行结果:
输出当前日期