Linux(centOS7)常用命令

监控linux系统情况

top之后输入M 按照内存排序
top之后输入P 按照cpu排序
top之后输入1查看内核
cat /proc/meminfo 查看内存
df -h 查看磁盘大小
cat /proc/cpuinfo |grep “physical id”|sort|uniq|wc -l 查看物理CPU
cat /proc/cpuinfo |grep “cpu cores”|wc -l 查看每个物理cpu中的core个数

查看进程

ps -ef 显示当前所有进程
ps -efwww 显示完整command
ps -ef | head -1;ps -ef | grep xxx 查询结果带标题头
kill -9 pid 杀死进程,忽略警告

查看占用的端口

lsof -i lsof -i:8888
netstat -tunlp netstat -tunlp | gerp 8888

服务状态

systemctl enable nginx.service 开机自启动
systemctl disable nginx.service 停止开机自启动
systemctl status nginx.service 查看服务状态
systemctl restart/start/stop nginx.service 重启/启动/停止服务
systemctl list-units --type=service 查看所有已启动服务
systemctl list-unit-files 查看开机启动项

修改ip

临时修改ip

ifconfig 网卡名 ip地址
重启之后会还原

永久修改ip

vi /etc/sysconfig/network-scripts/ifcfg-ens1 (不同机器不一样)
动态获取ip
(1)bootproto=dhcp
(2)onboot=yes
配置静态IP地址
(1)bootproto=static
(2)onboot=yes
(3)在最后加上几行,IP地址、子网掩码、网关、dns服务器
IPADDR=192.168.1.160
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=119.29.29.29
DNS2=8.8.8.8
重启网络服务
systemctl restart network
查看网卡信息
ip addr & ifconfig
卸载\加载网卡
ifdown eth0 / ifup eth0

查找文件

查找当前目录下所有文件
find . -type f
查找当前目录下python格式的文件
find . -name “.python"
find . -name "
.txt” -o -name “*.pdf” # or条件
查找当前目录下最近20天更新过的文件
find . -ctime -20

权限

修改权限1
chmod [{ugoa}{±=}{rwx}] [文件或目录]
u:所有者 g:所属组 o:其他人 a:所有人
+:为用户增加权限 -:为用户减少权限 =:为用户赋予权限
r:读权限 w:写权限 x:执行权限

修改权限2
chmod -R [mode=421] [文件或目录]
r:4 w:2 x:1

修改所属
chown [-R] 账号名称:组群 文件/目录

查找所有安装过软件包
rpm -qa
rpm -qa | grep sql # 包含某个字符串sql的软件包
安装rpm软件包
rpm -ivh your-package.rpm
安装.src.rpm软件包
rpm -i your-package.src.rpm
cd /usr/src/redhat/SPECS
rpmbuild -bb your-package.specs
cd /usr/src/redhat/RPM/i386/
rpm -i new-package.rpm
卸载rpm包
rpm -e your-package
rpm -e --nodeps your-package # 强制卸载

安装zip unzip
yum install zip #提示输入时,请输入y;
yum install unzip #提示输入时,请输入y;
zip压缩解压(对文件夹无效)
zip test.zip test.txt
unzip test.zip # 解压到当前目录
unzip test.zip -d /root/ # 解压到指定目录

tar
把根目录下的bbs.tar.zip解压到/zzz/bbs下,前提要保证存在/zzz/bbs这个目录
tar zxvf /bbs.tar.zip -C /zzz/bbs
将当前目录下的zzz文件打包到根目录下并命名为zzz.tar.gz
tar zcvf /zzz.tar.gz ./zzz

安装图形界面

安装程序包
yum groupinstall “GNOME Desktop” “Graphical Administration Tools”
修改默认启动页面为图形界面
systemctl set-default graphical.target
修改默认启动页面为命令行界面
systemctl set-defaultmulti-user.target
查看当前默认启动界面
systemctl get-default
重启
reboot

查看文件

tail test.log 查看最后10行
tail -f test.log 查看最后10行,跟踪查看
tail -n +20 test.log 从第20行到末尾
tail -n 20 test.log 最后20行
head -n 5 test.log 查看前5行
more -4 test.log 屏幕显示4行
cat test.log 查看全部内容
cat test.log | more -4 分页查看4行
cat test.log | more 分页查看一屏
cat test.log | less 通过less分页查看
grep -v ‘^$’ :过滤空白符
grep -v ‘^#’ :过滤#开头
ctrl + F - 向前移动一屏
ctrl + B - 向后移动一屏
ctrl + D - 向前移动半屏
ctrl + U - 向后移动半屏
j - 向前移动一行
k - 向后移动一行
G - 移动到最后一行
g - 移动到第一行
q / ZZ - 退出 less 命令

拓展:
cat > filename 创建一个新文件
cat file1 file2 > file 合并文件

防火墙

查看所有已开放的临时端口
firewall-cmd --list-ports
查看所有永久开放的端口
firewall-cmd --list-ports --permanent
添加临时开放端口
firewall-cmd --add-port=223/tcp
添加永久开放的端口(例如:3306端口)
firewall-cmd --permanent --add-port=3306/tcp
#关闭临时端口
firewall-cmd --remove-port=80/tcp
关闭永久端口
firewall-cmd --permanent --remove-port=80/tcp
防火墙放行服务
firewall-cmd --permanent --add-service=nfs
#配置结束后需要输入重载命令并重启防火墙以生效配置
firewall-cmd --reload
systemctl restart firewalld

文件编辑

命令行下
yy 复制光标所在行
p 粘贴在光标所在行
dd 删除光标所在行
2dd 删除光标所在行的两行
:3,5d 删除第3-5行
:1,$d 或者 :%d 删除所有行

脚本

后台持续执行
nohup ./test.sh &
nohup sh install.sh -s eth0 -a m32 > /install_log.log &
使用jobs可看到test.sh处于running状态
使用ps -ef |grep test.sh可查看到正在运行的test.sh脚本进程
退出当前shell终端,再重新打开,使用jobs看不到正在运行的test.sh,但使用ps -ef可以看到

系统

halt 立刻关机
poweroff 立刻关机
shutdown -h now 立刻关机(root用户使用)
shutdown -h 10 10分钟后自动关机 如果是通过shutdown命令设置关机的话,可以用shutdown -c命令取消重启
reboot 重启
shutdown -r now 立刻重启(root用户使用)
shutdown -r 10 过10分钟自动重启(root用户使用)
shutdown -r 20:35 在时间为20:35时候重启(root用户使用) 如果是通过shutdown命令设置重启的话,可以用shutdown -c命令取消重启

scp传输

将本地文件拷贝到远程
scp local_file remote_username@remote_ip:remote_folder
从远程复制到本地
scp -r remote_username@remote_ip:remote_folder local_folder

系统用户

查看系统用户
cat /etc/passwd|grep -v nologin|grep -v halt|grep -v shutdown|awk -F":" ‘{ print $1"|“$3”|"$4 }’|more

修改文件sed -i

对每行匹配到的第一个字符串进行替换
sed -i ‘s/原字符串/新字符串/’ ab.txt
对全局匹配上的所有字符串进行替换
sed -i ‘s/原字符串/新字符串/g’ ab.txt
删除所有匹配到字符串的行
sed -i ‘/匹配字符串/d’ ab.txt
特定字符串的行后插入新行
sed -i ‘/特定字符串/a 新行字符串’ ab.txt
特定字符串的行前插入新行
sed -i ‘/特定字符串/i 新行字符串’ ab.txt
把匹配行中的某个字符串替换为目标字符串
sed -i ‘/匹配字符串/s/源字符串/目标字符串/g’ ab.txt
在文件ab.txt中的末行之后,添加bye
sed -i ‘$a bye’ ab.txt
对于文件第3行,把匹配上的所有字符串进行替换
sed -i ‘3s/原字符串/新字符串/g’ ab.txt

sed -i ‘/GRUB_CMDLINE_LINUX=/d’ /test.txt
sed -i ‘/GRUB_DISABLE_RECOVERY/i GRUB_CMDLINE_LINUX=“crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap biosdevname=0 net.ifnames=1 rhgb quiet”’ /test.txt

wc命令

统计1.txt文件行数
wc -l 1.txt
统计1.txt文件字节数
wc -c 1.txt
统计1.txt最长行是第几行
wc -L 1.txt
统计关键字个数
wc -w 1.txt
统计1.txt中123的个数
grep 123 1.txt | wc -w

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值