大数据Linux常用命令2
1.清除屏幕clear
2.mv移动 cp复制
1 mv是始终一份 快 2 cp是两份 慢 3 4 不标准写法: 5 mv dir1 bigdata 6 cp -r dir2 bigdata 7 8 标准写法: 9 mv dir1 bigdata/dir1 10 cp -r dir2 bigdata/dir2 11 12 也支持修改名称 13 mv dir2 dir22 14 cp -r dir3 dir33
3.创建文件
1 touch 1.log 空文件 2 vi 2.log 3 默认命令行 4 i键 编辑模式,进行编辑 5 esc键 从编辑模式--》命令行模式 6 shift+:键 从命令行模式--》尾行模式,输入wq 保存退出 7 8 9 主要场景是为了 覆盖内容 或者 追加内容 10 echo "bigdata" > 3.log 11 打印一句话 12 13 > 创建或覆盖 【高危命令1】 14 >> 追加
4.查看文件内容 log config data
1 cat 文件内容一下子全部显示 ctrl+z 中断 2 more 文件内容一页页往下翻,按空格往下 回退不了 q退出 3 less 文件内容 按上下键 q退出 4 5 6 cat 文件内容 少 7 more 文件内容 稍微多点 8 9 tail 实时查看文件最新内容 10 tail -f xxx.log 11 tail -F yyy.log =-f+ retry 12 13 场景: 采集业务log日志内容 log4j 14 规则: 每份100m 只保留10份 15 系统--》 erp.log 90m ...100m 16 17 如果erp.log满了后 18 19 mv erp.log erp.log1 20 touch erp.log 21 22 ll命令查看 23 erp.log 24 erp.log1 25 erp.log2 26 .... 27 erp.log10 28 29 所以如果用Flume tail -f erp.log采集erp.log则会在mv erp.log erp.log1时监控失败 30 Flume组件 exec source: tail -F erp.log 31 32 33 想要查看文件内容倒数100行,同时实时监控 34 tail -100f xxx.log 35 tail -100F xxx.log 会报错误的 36 37 文件内容超多 定位ERROR 信息 38 cat xxx.log | grep ERROR 当前行 39 cat xxx.log | grep -A 5 ERROR 后5行 40 cat xxx.log | grep -B 5 ERROR 前5行 41 cat xxx.log | grep -C 5 ERROR 前后各5行 42 43 | 管道符 44 45 grep 过滤 46 47 48 比如 xxx.log ERROR 很多 上万个 49 cat xxx.log | grep -C 5 ERROR > error.log 50 more 20200418error.log 51 52 文件内容100m : 53 vi xxx.log 54 shift+: 55 / 56 ERROR 57 n寻找 58 下载到window 59 editplus(window) 60 notepad++ 61 sublime(widnow mac)工具 搜索 统计 校验
5. 上传下载
1 安装工具包 yum install -y lrzsz 2 sz xxx.log是下载 Linux--》window 3 rz 是上传 window--》Linux
6.别名 alias
1 [root@bigdata001 log]# alias 2 alias cp='cp -i' 3 alias egrep='egrep --color=auto' 4 alias fgrep='fgrep --color=auto' 5 alias grep='grep --color=auto' 6 alias l.='ls -d .* --color=auto' 7 alias ll='ls -l --color=auto' 8 alias ls='ls --color=auto' 9 alias mv='mv -i' 10 alias rm='rm -i' 11 alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde' 12 [root@bigdata001 log]# 13 14 只在当前会话生效 15 [root@bigdata001 log]# alias jj='cd /tmp' 16 其他会话不生效 17 [root@bigdata001 ~]# jj 18 -bash: jj: command not found 19 [root@bigdata001 ~]# 20 21 是因为没有在环境变量文件配置
7.环境变量
1 全局 : /etc/profile 所有用户都可以使用 2 3 个人: ~/.bash_profile 只能是当前用户使用 其他不能使用 4 ~/.bashrc 【推荐】 5 场景: ssh 远程执行B机器 命令 找不到 java command not found 6 直接登录B机器 命令是找到的 which java有的 7 8 命令的环境变量配置在.bash_profile 是不正确的。 9 应该配置在.bashrc文件 10 11 生效文件: 12 source /etc/profile 13 source ~/.bash_profile 14 source ~/.bashrc 15 cd 进家目录 16 . .bashrc
8.创建用户
1 root 默认管理员用户 已存在的 2 jepson 3 [root@bigdata001 tmp]# useradd jepson 4 [root@bigdata001 tmp]# su - jepson 5 [jepson@bigdata001 ~]$ pwd 6 /home/jepson
9.自动补全 释放你的手指 节省力量
1 tab键一次,只有1个 命令自动补全 2 多个 没响应 3 按二次,会把当前匹配到的 所有 打印出来,再挑选
10.history 历史命令
1 !2 执行第二行命令 2 3 history -c 清空历史 4 5 直连 服务器 ok 6 跳板机(vpn) 服务器 ok 7 堡垒机 敲一个命令 都记录 堡垒机系统里 web界面 可视化
11.【高危命令】 rm
1 千万不要做 rm -rf / 一了百了 2 3 [root@bigdata001 ~]# rm 11.log 4 rm: remove regular file ‘11.log’? y 5 6 [root@bigdata001 ~]# rm -f 1.log 7 8 [root@bigdata001 ~]# rm -r dir22 9 rm: remove directory ‘dir22’? y 10 11 [root@bigdata001 ~]# rm -rf dir33 12 [root@bigdata001 ~]# 13 14 场景: 15 脚本里 16 17 LOG_PATH=/xxx/yyy 18 业务逻辑判断 去赋值 19 漏了一种 没有赋值 20 rm -rf ${LOG_PATH}/* ==》rm -rf /* 21 22 该怎么避免 : 23 每次删除之前 都判断${LOG_PATH} 是否存在
12.设置机器名
1 [root@bigdata001 ~]# hostnamectl set-hostname bigdata001 2 3 [root@bigdata001 ~]# ifconfig 找内网ip 或者 京东云控制台查看 4 [root@bigdata001 ~]# vi /etc/hosts 5 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 6 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 7 8 192.168.0.3 bigdata001