1、无分类
//删除文件夹下所有文件
rm -rf *
//查看文件有多少行
wc -l /bigdata/coc/xl/hive/data.txt
//解压jar包到指定目录
unzip ??.jar -d /bigdata/coc/xl/hive/
//删除非空文件夹
rm -rf dir1
//文件名模糊匹配
ls aa*.txt
//查看隐藏文件
ls -a
//修改文件权限,-r表示递归
chmod -r xyz 文件或目录
//永久修改主机名
hostnamectl set-hostname master
//压缩文件夹
tar -zcvf 打包后生成的文件名全路径 要打包的目录
tar -zcvf /coc/loc_deploy.tar.gz /coc/loc_deploy
//解压tar.gz文件
tar -zxvf java.tar.gz
解压到指定的文件夹
tar -zxvf java.tar.gz -C /usr/java
查找目录:find /(查找范围) -name '查找关键字' -type d
查找文件:find /(查找范围) -name 查找关键字 -print
while true ;do grep --color "报表指标血缘分析完成" info.log; sleep 5; done;
2、vim命令
//将文件所有的mon替换为monday
:%s/mon/monday/g
// 统计字符串出现次数
:%s/word/&/gn
//清空文件内容
:1,$d
//搜索
/字符 从头搜索
?字符 从尾搜索
n搜下一个,N搜上一个
3、查看日志文件
//查看实时日志文件输出
tail -f loc.log
//
less loc.log
g 移动到第一行
G 移动到最后一行
q 退出
j 向前移动一行
k 向后移动一行
ctrl+b 向前翻一屏
空格键 向后翻一屏
4、sed文本编辑命令
//文件内容替换
sed -i 's/buhao/hao/g' /bigdata/coc/xl/cc/aa.txt
//文件内容替换-去掉行首前n个字符(.匹配一个字符,*匹配前面0或多个任意字符)
sed 's/^[0-9]*,//' hello.txt
//删除文件中的空行
sed -i '/^$/d' /bigdata/coc/xl/hive/data.txt
5、grep
//从单个或多个文件中查找字符串
grep '标签入库URL为' labelmap_1.log labelmap_2.log
//现有一个文件,文件内容有n行,每一行都是一个手机号,通过执行以下命令,找出不符规则(共11位,每一位都是数字0到9)的手机号有几个
grep -v -c '^[0-9]\{11\}$' hello.txt
// 从日志文件中过滤出11219
grep --color '11219' info_20211222*
cat *.log | grep "25972317-dace-4051-a0ea-b35ae764e251" -A 20 -B 20 -C 10 > 25972317.log
6、进程
//杀死进程
kill -s 9 进程id
//根据进程id查看进程
ps -aux |grep -v grep|grep 8698
//linux如何查看端口被哪个进程占用的方法:
lsof -i:端口号
lsof -ti:端口号 //只显示进程号
netstat -tunlp|grep 端口号
//模糊查询进程
ps -ef|grep tmall.jar
//模糊查询
netstat -nap | grep 进程pid或端口号
7、网络
#查看网页
curl http://10.1.245.176:8443/labelmap/services/G2PLableDataResultService?wsdl
//查看iptables状态,如果是Active: active (exited)则已激活
systemctl status iptables.service
systemctl stop iptables.service
//关闭SELINUX,要重启计算机才能生效
vi /etc/selinux/config
SELINUX=disabled
//临时关闭selinux
setenforce 0
//临时开启SELinux
setenforce 1
//查看当前状态命令
getenforce
//查看firewalld状态,出现Active: active (running)且高亮显示则表示是启动状态。
//出现 Active: inactive (dead)灰色表示停止
systemctl status firewalld
//永久关闭防火墙
systemctl disablefirewalld
8、硬件
//查看发行版本信息:【】
cat /etc/issue
//查看cpu型号
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
//查看物理cpu个数
cat /proc/cpuinfo | grep "physical id" | sort | uniq|wc -l
//查看逻辑cpu个数
cat /proc/cpuinfo | grep "processor" |wc -l
//查看cpu是几核,即每个物理cpu有几个核心数
cat /proc/cpuinfo | grep "cores"|uniq
//查看超线程是否打开:如果"siblings"和"cpu cores"一致,则说明不支持超线程,或者超线程未打开
cat /proc/cpuinfo |grep "sibling"|uniq
//查看磁盘使用情况,单位是KB而不是B
df
df -h
df -h /data/
//查看哪个目录占用率大
du -sh *
//实时查看进程,动态刷新
top
//查看内存使用情况
free
free -h
CPU总核数 = 物理CPU个数 * 每颗物理CPU的核数
总逻辑CPU数 = 物理CPU个数 * 每颗物理CPU的核数 * 超线程数
如图1,物理cpu个数为2,通过总线相连
如图2,该物理cpu有两个核心,每个核心又对应2个超线程
图1
图2
9、用户和用户组
1、删除账号
userdel -r 用户名
2、创建账号并赋予root权限
adduser bobo
passwd bobo
修改 /etc/sudoers 文件,找到下面一行,把前面的注释(#)去掉
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL
然后修改用户,使其属于root组(wheel),命令如下:
#usermod -g root xulong
显示当前登录用户信息:
w
who
whoami
用户列表文件:/etc/passwd
用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
用户组列表文件:/etc/group
查看系统中有哪些用户:cut -d : -f 1 /etc/passwd
查看可以登录系统的用户:cat /etc/passwd | grep -v /sbin/nologin | cut -d : -f 1
groups 用户 查看用户所属用户组
10、Sftp
//登录
sftp -oPort=22 root@192.168.0.254
//列出本地当前目录
lpwd
//列出远程当前目录
pwd
//同lpwd理
lls
//同ls理
ls
//下载文件
get 远程主机下文件的路径 将文件保存到本地电脑的路径
//上传文件
put 本地文件的路径 将文件版保存到远程主机的路径