基本操作:

rm -rf 文件名
ps -fx 查看进程 (ps -fx |grep 关键字)
history 看最近操作
命令 & 把命令放入后台执行
ctrl+Z 把命令放入后台,命令在后台处于暂停状态
jobs 查看分屏
fg 1 进入分屏
ctrl+shift+r 重新登录
tar -xvf 文件名.tar 解压
mv 文件名1.tar 文件名2.tar 改名
ll -a 查看git
grep -rn 文件名 (从当前目录到子目录查找目录)
kill -1 重新加载进程\ -9 杀死进程\ -15 正常停止进程
chmod +x 文件名 增加文件执行权限指令
find . -name "*dump" 找文件 [-wholename -samefile ]
GNU grep: 'find ... -print0 | grep -FzZ './server_name'' ???

输入telnet命令: telnet localhost[或ip(127.0.0.1)] 2181
如果看到字样: Mode: standalone,代表你的ZookKeeper已经启动成功

top 监听进程运行状态:
输入M 按内存占用率排序
输入c 显示进程COMMAND全称
输入N 按PID大小排序
输入P 按cpu占用率排序


date -s "2021-10-19 00:00:00" +%s
date -d/-s @1636300740

vim:

:sp 文件名 进入新窗口
:q 退出
ctrl+w+f 进入文件
ctrl+w+上下键 切换窗口
zc 折叠; zo 展开
当鼠标选中自动进入可视模式时:命令行输入set mouse -= a 即可编辑
多条件查询:

?.*aaa\&.*bbb    同时包含aaa和bbb的行,且无先后顺序 
?aaa\&.*bbb      同时包含aaa和bbb的行,且有先后顺序 
?aaa\|b          包含aaa或bbb的行 

OOM日志查看:

out of memory(OOM),系统内存不足时,OOM killer 会杀掉“bad”进程以腾出内存给系统用。在其相关日志(/var/log/messages)检查,会看到类似 out of memory:kill process 的信息。
内核检测到系统内存不足,挑选并杀掉某个进程的过程可以参考内核源代码(linux/mm/oom_kill.c),当系统内存不足时,out_of_memory() 被触发,然后调用 select_bad_process() 选择一个“bad”进程杀掉,挑选的过程由 oom_badness() 决定,最“bad”的进程就是最占用内存的进程。
配置 OOM killer :
(1)通过内核参数来调整OOM killer的行为,避免系统不断杀进程。比如在触发OOM后立刻触发kernel panic,kernel panic 10秒后自动重启系统。
(2)oom_badness()给每个进程打分,根据points的高低决定杀哪个进程,points可以根据adj调节(分数越低越不容易被杀掉)。可以在用户空间通过操作每个进程的oom_adj内核参数(oom_score_adj),来决定哪些进程不容易被 OOM killer 选中杀掉。
(3)完全关闭 OOM killer。(不推荐用在生产环境)


查找linux下mysql的配置文件:

通过which命令查看mysql在那个目录下:
which mysql

接下来就可以针对这个目录通过一些命令查看配置文件在哪:
/usr/bin/mysql --verbose --help | grep -A 1 'Default options'

然后在下面会出现一些信息
Default options are read from the following files in the given order:
/etc/mysql/my.cnf /etc/my.cnf ~/.my.cnf

这个信息的意思是:
服务器首先读取的是/etc/mysql/my.cnf文件,如果前一个文件不存在则继续读/etc/my.cnf文件,如若还不存在便会去读~/.my.cnf文件


ssh:

在~/.ssh/ 下创建 config文件,并以如下格式编辑配置文件:

Host lab      //命令名字
    HostName amazon.com      //主机名(地址名称)
    User piperck             //用户名
    IdentityFile ~/.ssh/id_rsa        //指定的私钥地址

在设置了config之后可能出现一个问题,每次在连接的时候可能会要求你输入私钥的对称加密密匙,所以需要把这个钥匙加入到authentication agent中。
ssh-add:使用 ssh-add ~/.ssh/your_private_key 输入你的私钥密码,就可以把你的私钥加入到ssh-agent中,方便让它帮你管理。而不再需要每次输入的时候都重复输入密码。

当然不需要的时候 你也可以使用
ssh-add -D 删除所有管理的密钥
ssh-add -d 删除指定的
ssh-add -l 查看现在增加进去的指纹信息
ssh-add -L 查看现在增加进去的私钥

如果重启之后,会发现需要重新load一下ssh-agent
ssh-add -K 将指纹加到钥匙串里面去
ssh-add -A 可以把钥匙串里面的私钥密码,load进ssh-agent


screen:

screen -X -S name quit 退出name终端

screen:创建一个虚拟终端并且登录
screen -ls:列出当前所有虚拟终端
screen [-d] -r sessionid:进入指定的虚拟终端
screen -S <作业名称> 指定screen作业的名称。(用来替代[pid.tty.host]的命名方式,可以简化操作)
screen -x 恢复之前离线的screen作业

Ctrl-a c 新建 bash screen 终端
Ctrl-a shift+" 列出
Ctrl-a 空格 窗口切换
Ctrl+a w :窗口列表
Ctrl+a K(大写) :关闭当前窗口,并且切换到下一个窗口(当退出最后一个窗口时,该终端自动终止,并且退回到原始shell状态)
exit :关闭当前窗口,并且切换到下一个窗口(当退出最后一个窗口时,该终端自动终止,并且退回到原始shell状态)
Ctrl-a d 断开所有 screen 终端,返回 screen 执行前状态,但 screen 内所有终端的任务都在执行
Ctrl-a S 新建水平分割窗口
Ctrl-a Tab 在分割的屏幕之间切换
Ctrl-a X 关闭分割出的屏幕


Note:

通过下面的命令查看路由转发是否开启:
cat /proc/sys/net/ipv4/ip_forward

像192.168.xx.xx这种局域网机器的ip通常使用dhcp动态分配, 我们可以设置手动设置静态ip, 通过如下命令设置eth0网卡信息:
vi /etc/sysconfig/network-scripts/ifcfg-eth0

查看的路由表,路由表会记录数据包将转发到哪里去:
route -n

无论是Windows还是Linux都有一个 host文件 ,输入百度网址时首先去查 本机配置的host 获得百度域名对应的IP,没有的话,会转发到公网去 公网的dns 也就是域名解析服务器,去找baidu.com的对应IP,而这中间对于百度这样大的体量的企业还可能有 cdn(内容分发网络) 根据你请求的IP地址找到距离你IP所在地最近的 CDN机房(CDN和主IDC是镜像关系) ,开始由CDN的主机处理你的请求,如果你请求的百度首页在cdn里存的是最新版本,那么cdn会将这个首页直接返回给你,如果不是则由CDN请求主IDC机房获得最新的首页,然后CDN更新自己的首页之后再返回给你。所以你ping到的极有可能是百度的CDN的IP地址。
host文件在 /etc 目录下