Linux常用命令

七、Linux命令

1.查看Linux硬盘空间

image-20210503150540107

2.查看Linux CPU内存和系统版本

image-20210503151002260

cat /proc/cpuinfo:查看当前CPU的软硬件信息

image-20210503151542686

top: 查看CPU动态信息 顶部展线当前CPU的整体使用情况

image-20210503151737774

dstat :查看CPU的动态运行信息

image-20210503152034809

free:查看当前内存的使用情况

image-20210503152253572

uname -r: 查看Linux系统内核版本号

image-20210503152413807

uanme -a :查看主机名 内核版本 CPU架构

image-20210503152605251

cat /etc/redhat-release :查看centos版本

image-20210503152845949

3.Linux常见命令

# 显示所有进程
ps -ef

# 查看指定进程
ps -ef|grep 进程ID

# 查看cpu占用率
top

# 查找包含指定名称的文件
find / -name *名称*

# 查看用过的命令列表
history

# 查看ip地址及接口信息
ifconfig

# 查看环境变量
env	#查看所有
env $HOME	#查看指定

netstat -anp 查看当前网络所有相关的连接信息

a–表示显示所有选项

n–表示拒绝显示别名 尽可能的把一些别名转换成一个数字

p–表示建立相关连接的程序也显示出来

image-20210503153420791

proto表示连接方式 ;Local Adress表示远端地址 Foreign Address表示远端地址;

State:表示当前连接的一个状态

PID/Program name:表示当前进程锁定的进程ID和进程名

查看8080端口是否被占用:netstat -anp | grep 8080

| 相当于管道,将netstat-anp的输出作为grep的输入

查看指定进程的名字都有哪些连接 netstat -anp | grep python

top:查看一台主机上的进程相关信息

top:之后按下shift+m 可以按照RES降序排序 查看当前主机上哪些进程占用内存比较多

top: 之后按下shfit+p 可以按照CPU的情况降序排序 查看CPU占用情况最多的前n个进程

image-20210503154305171

分成统计信息和进程列表两大块

统计信息:

第一二行描述主机当前的运行复杂情况

load average :load表示系统负载,数字越大说明当前系统越繁忙;负载的含义表示当前系统的任务队列中队列的长度是多长

第三行表示当前当前CPU的使用情况

第四行第五行表示内存的使用情况:

total表示当前主机总共有多少物理内存;

free表示有哪些内存没有被使用;

used表示已经用了的内存;

buffer/cache表示当前哪些内存被缓存使用了

进程列表

PID:进程ID

USER:进程所属的用户

PR/NI:进程优先级

VIRI:进程所占的虚存

RES:进程所占的物理内存 (注意这个列,如果主机进程所占用的物理内存较多,再次申请内存可能会失败)

SHR:表示共享内存

查看IP地址 ifconfig 一台主机可能有多个网络接口 就有多个IP地址

image-20210503160226537

4.文件访问权限

image-20210503161736403

umask:查看以及设置文件的默认创建权限引码 它决定一个文件默认创建出来是一个什么样的权限

umask -S 可以查看到具体对应的权限信息

注意:如果一个文件已经创建成功,这个文件的权限不能通过默认权限掩码来进行影响了

此时修改文件权限的命令应该是Chmod

image-20210503162528630 image-20210503162651441 image-20210503162713535

022取反之后:755 恰好是u=rwx,g=rx,o=rx

chmod:给文件添加一些权限

可以给指定用户添加指定的权限

1.chmod [augo] a-所有用户 u-文件所有者 g-文件所属组 o-其他用户 以+和-表示增加或者去除某个权限

chmod g+w test.txt 给test.txt的文件所属组增加可写的权限

chmod o-r test.txt 删除调其他用户的可读权限

2.chomod 777 以八进制数字的形式来修改文件的权限

3.修改文件的所有者 chown 或者文件的所属组chgrp

chown san text.txt 将文件的所有者改为san

chgrp san text.txt 将文件的所属组改成san

5.Linux操作系统权限的理解

image-20210503164617493

sudo :可以临时对用户进行提权操作,提升到管理员的权限,可以完成我们当前不能完成的操作

例如:不需要切换到root用户,使用sudo命令可以临时使用管理员权限查看根目录下的内容

但是必须有前提条件,这个用户需要在sudo的配置文件中进行配置,让它可以临时获得管理员权限。

添加普通用户2018217912可以临时获得管理员权限

image-20210503170631356 image-20210503165625929

6.Linux的find命令

image-20210503171019989

find命令:在linux系统中快速查找到某一个文件

image-20210503172054351

7.grep命令

grep:在文件中过滤出想要的内容

grep ‘love’ test.txt (过滤出带love的行)

grep -i ‘love’ test.txt (过滤出带love的行 不区分大小写)

grep -n ‘love’ test.txt (-n显示对应的行号)

grep ‘lov.*’ test.txt (标准正则 grep支持标准正则 可以找到以lov开头所在的行)

grep -E “love|LOVE” test.txt(筛选出love和LOVE所在的行,此时使用到“|”符号,因此必须使用扩展正则)

grep -c ‘love’ test.txt (统计匹配的行数,而不显示具体的内容)

grep -o ‘love’ test.txt (只希望显示匹配的内容而不是显示整行内容)

使用实例:etc/password 这个文件里面 有哪些行有root信息

cat etc/password | grep "root"

cat etc/password 获得内容

“|”将信息放入管道

grep “root” 从管道中过滤出root信息

使用实例:在一个C的工程里面,在.h文件中找到某个结构体到底在哪一个文件里面定义的

find和grep相结合

系统头文件放在usr/src/kernels目录下

xargs 在每一个文件中过滤出我们想要的文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LohLNSKa-1622787579163)(C:\Users\gcc\AppData\Roaming\Typora\typora-user-images\image-20210503173931865.png)]

8.Linux如何查看java进程/线程的内存使用情况

使用top命令查看系统资源的使用情况,命令:top

image-20210511001217464

如图可以看到java的进程内存使用率较高,java进程的内存使用率达到了70%+

2.定位线程问题(通过命令查看9718进程的线程情况),命令:

   ps p 9718 -L -o pcpu,pmem,pid,tid,time,tname,cmd
image-20210511001238790

由此可以看到这PID:9718的进程产生了很多线程。接下来就可以通过jstack查看内存使用的堆栈。

  1. 查看内存使用的堆栈:在这里我们挑选了TID=9731的线程进行分析,首先需要将9731这个id转换为16进制。需输入如下命令

    printf "%x\n" 9731
    
    

    接下需要使用16进制的2603

    image-20210511001411668
  2. 将PID为9718的堆栈信息打印到jstack.log中,命令:jstack -l 9718 > jstack.log

image-20210511001426584
  1. 查看堆栈信息文件,命令:vim jstack.log

在进行搜索TID为2603的相关信息。如图:

image-20210511001446497

可以看到这个线程状态为:WAITING。通过查看文件分析 看到大量 Java Thread State。

网络字节序和主机字节序的差异

字节序分为大端字节序和小端字节序

大端字节序是指一个整数的低位字节(32-31bit)存储在内存的高地址处,低位字节(0-7bit)存储在内存的高地址处。
小端字节序是指一个整数的低位字节(32-31bit)存储在内存的低地址处,低位字节(0-7bit)存储在内存的低地址处。
现代PC大多采用小端字节序,所以小端字节序又被称为主机字节序。
大端字节序也称为网络字节序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值