Hadoop Day02
2019-09-02 23:24
85 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/YYNNNCSDN/article/details/100375252
(5) 特殊变量:
$? 表示上一个命令退出的状态码(0-255)
$$ 表示当前进程编号
$0 表示当前脚本名称
$n 表示n位置的输入参数(n代表数字,n>=1)
$# 表示参数的个数,常用于循环
∗和*和∗和@ 都表示参数列表
(6) 算数表达式运算:
1.指定定时任务夫人软件:crond服务
crontab :
(1)安装:yum install crontabs
(2)启动:service crond start
(3)关闭:service crond stop
(4)重启:service crond restart
(5)重新载入:service crond reload
(6)重新服务状态:service crond status
修改任务计划: 常用的几项: (1)crontab -l [-u user] 列出用户目前的crontab. (2)crontab -e [-u user] 编辑用户目前的crontab. (3)crontab -r 删除定时任务 调度配置基本格式: * * * * * command 分 时 日 月 周 命令
-
shell 脚本:
创建: vi/vim 文件名.sh
编写: 以#!/bin/bash 开头
执行: sh 文件名.sh -
系统变量:
(1)set 查看系统变量和用户自定义变量
(2)echo
# eg: [root@hdp01 ~]# a="hello world" [root@hdp01 ~]# echo $a hello world # 拼接 root@hdp01 ~]# echo $a+"s" hello world+s [root@hdp01 ~]# echo $a"s" hello worlds [root@hdp01 ~]# echo $as 或者 [root@hdp01 ~]# echo ${a}s hello worlds
(3). export:可把变量提升为当前shell进程中的全局环境变量,可供其他子shell进程使用
# eg: [root@hadoop2 home]# vi a.sh #!/bin/bash a="a in a.sh" echo $a /root/scripts/b.sh [root@hadoop2 home]# vi b.sh #!/bin/bash b="b in b.sh" echo $b echo $a
(4)反引号赋值:
eg : A =
ls -la反引号,运行里面的命令,并把结果返回给A ,等价于A = $(ls -la)
(5) 特殊变量:
$? 表示上一个命令退出的状态码(0-255)
$$ 表示当前进程编号
$0 表示当前脚本名称
$n 表示n位置的输入参数(n代表数字,n>=1)
$# 表示参数的个数,常用于循环
∗和*和∗和@ 都表示参数列表
(6) 算数表达式运算:
- expr eg:s =
expr 2+3
, b =expr $s \* 4
- 用(()) eg: echo $((1+2))
- 用$[ ] eg: a = $[1+2] echo $a
- 用let eg: i = 1 let i++
5.流程控制:
(1) if 语句:
格式: if [condition] then [statement] elif [condition] then [statement] else then [statement] fi
(2) 判断条件:
[root@shizhan01 scripts]#a=1 [root@shizhan01 scripts]#b=2 [root@shizhan01 scripts]# if [ a = b ];then echo ok;else echo notok;fi 结果 : notok [root@shizhan01 scripts]# if [ a=b ];then echo ok;else echo notok;fi 结果 : ok #有无空格,结果不一样,有空格正确!!!
(3)短路(三元运算符):[condition] && echo ok || echo notok
条件满足,执行&&后语句,不满足执行||后面的语句
-a 代表and -o 代表 or
(4)字符串比较:= 字符串是否相等,!=字符串是否不相等
-z 字符串为0返回ture -n 字符串不为0返回true
(5)整数比较:-lt 小于,-le 小于等于,-eq 等于,-gt 大于,-ge 大于等于。或可以用转义的数学符号如:<
(6)文件判断:-d 是否为目录 , -f 是否为文件, -e 是否存在
(7)while语法:
#格式一: while expression do command … done #格式二: i=1 while ((i<=3)) do echo $i let i++ done
(8)case语法:
case $1 in start) echo "starting" ;; stop) echo "stoping" ;; *) echo "Usage: {start|stop}" esac
(9)for 语法:
for N in 1 2 a do echo $N done 或 for N in 1 2 3; do echo $N; done 或 for N in {1..3}; do echo $N; done
for ((i = 0; i <= 5; i++)) do echo "welcome $i times" done 或 for ((i = 0; i <= 5; i++)); do echo "welcome $i times"; done
(10)函数的使用:
#!/bin/sh # func1.sh #hello hello() ## 函数定义 { echo "Hello there today's date is `date +%Y-%m-%d`" return 2 ###返回值其实是状态码,只能在[0-255]范围内 } echo "now going to the function hello" hello echo $? #获取函数的return值(即:返回上一条命令执行的后的值。true返回0,false返回1) echo "back from the function" 执行:function hello() hello 或 function hello
(11)跨脚本调用函数: 在其他脚本内添加要调用的函数路径
未完待续!!!!!!!
相关文章推荐
- 2-2.1.Hadoop2.0x HDFS shell命令(Hadoop系列day02)
- Hadoop学习--完全分布式部署(pdsh/include&exclude/安全模式/均衡器/快照/回收站)--day02
- Hadoop_Day02
- 2-3HDFS原理(Hadoop系列day02)
- 2-4.HDFS原理2(Hadoop系列day02)
- Hadoop——day02(完全分布式、同步、免密登录、启动集群)
- 2-1.HDFS原理(Hadoop系列day02)
- 2-6Hadoop RPC(Hadoop系列day02)
- 2-7HDFS读取数据过程(Hadoop系列day02)
- 2-2.HDFS的shell操作(Hadoop系列day02)
- Hadoop备忘
- Hadoop分布式文件系统HDFS:架构和设计(转)
- CentOS 6.2部署Hadoop的注意事项<转>
- hadoop不同版本之间的集群复制
- 【hadoop 2.6】hadoop 2.6集群环境搭建及文件系统使用
- hadoop系列 第三坑: Task process exit with nonzero status of 137
- eclipse通过插件连接hadoop,一直报listing状态的错误
- hadoop部署注意点
- Hadoop自定义分组Group
- 马士兵hadoop第四课:Yarn和Map/Reduce配置启动和原理讲解