1.1 Linux&Shell
1.1.1 Linux常用高级命令
序号 | 命令 | 命令解释 |
1 | top | 实时显示系统中各个进程的资源占用状况(CPU、内存和执行时间) |
2 | jmap -heap 进程号 | 查看某个进程内存 |
3 | free -m | 查看系统内存使用情况 |
4 | ps -ef | 查看进程 |
5 | netstat -tunlp | grep 端口号 | 查看端口占用情况 |
6 | du -sh 路径* | 查看路径下的磁盘使用情况 例如:$ du -sh /opt/* |
7 | df -h | 查看磁盘存储情况 |
1.1.2 Shell常用工具及写过的脚本
1)awk、sed、cut、sort
2)用Shell写过哪些脚本
(1)集群启动,分发脚本
#!/bin/bash
case $1 in
"start")
for i in hadoop102 hadoop103 hadoop104
do
ssh $i "绝对路径"
done
;;
"stop")
;;
esac
(2)数仓层级内部的导入:ods->dwd->dws ->ads
①#!/bin/bash
②定义变量 APP=gmall
③获取时间
传入 按照传入时间
不传 T+1
④sql="
先按照当前天 写sql => 遇到时间 $do_date 遇到表 {$APP}.
自定义函数 UDF UDTF {$APP}.
"
⑤执行sql
1.1.3 Shell中单引号和双引号区别
1)在/home/atguigu/bin创建一个test.sh文件
[atguigu@hadoop102 bin]$ vim test.sh
在文件中添加如下内容
#!/bin/bash
do_date=$1
echo '$do_date'
echo "$do_date"
echo "'$do_date'"
echo '"$do_date"'
echo `date`
2)查看执行结果
[atguigu@hadoop102 bin]$ test.sh 2022-02-10
$do_date
2022-02-10
'2022-02-10'
"$do_date"
2022年 05月 02日 星期四 21:02:08 CST
3)总结:
(1)单引号不取变量值
(2)双引号取变量值
(3)反引号`,执行引号中命令
(4)双引号内部嵌套单引号,取出变量值
(5)单引号内部嵌套双引号,不取出变量值