Linux-常用命令

话不多说,直接上干货:

# 查看磁盘使用大小情况
df -k
# 结果:
[root@dev ~]# df -k
Filesystem     1K-blocks     Used Available Use% Mounted on
devtmpfs         1929368        0   1929368   0% /dev
tmpfs            1939956        0   1939956   0% /dev/shm
tmpfs            1939956      852   1939104   1% /run
tmpfs            1939956        0   1939956   0% /sys/fs/cgroup
/dev/vda1       41152812 15117628  24131476  39% /
tmpfs             387992        0    387992   0% /run/user/0
overlay         41152812 15117628  24131476  39% /var/lib/docker/overlay2/1490a6cac08d71ba0fa04d06dd69eb745b5324181963b9b97ebae885acd30b74/merged
overlay         41152812 15117628  24131476  39% /var/lib/docker/overlay2/3f370c3c736110a1b1f959b2e37a0761cc1f25d0be8c7352033112656acab29f/merged
shm                65536        0     65536   0% /var/lib/docker/containers/97a41cf4c165e1267f77cf20d2ed55f5f17d73ed6992cc64a666524825510df2/mounts/shm
overlay         41152812 15117628  24131476  39% /var/lib/docker/overlay2/ce02aa84a90fe67aeabe784fe03192dfa69be6101764fdd2204a02ce5a568e9c/merged
shm                65536        0     65536   0% /var/lib/docker/containers/f2729fa28d8e9ace25c2885403558fef40a65db12cb1f1967d3cbcacfd9b7c6f/mounts/shm
overlay         41152812 15117628  24131476  39% /var/lib/docker/overlay2/ff81c945a0d21bd9ccee72aefd6cb1d50f3fb7b1a50c8b7700bf3db760e2f254/merged


# 查看当前目录下的文件及目录大小:
du -sh *
# 执行结果
[root@dev /data]# du -sh *
1.3G	code
16K	config
271M	docker
4.0K	files
110M	logs
8.0K	pid
12K	ssl
583M	web

# 查看当前目录大小,可拓展子目录
du -h -x --max-depth=1
# 执行结果
[root@dev /data]# du -h -x --max-depth=1
16K	./config
583M	./web
4.0K	./files
1.3G	./code
271M	./docker
8.0K	./pid
110M	./logs
12K	./ssl
2.3G	.

# 查看前几名进程(修改10)
ps -aux | sort -k3nr | head -10
# 执行结果:
[root@dev /data]# ps -aux | sort -k3nr | head -10
root     20793  2.8  0.8 160232 33632 ?        S<sl Jun17 2021:23 /usr/local/aegis/aegis_client/aegis_12_13/AliYunDunMonitor
1001     32585  1.3  0.8 11220776 31768 ?      Ssl   2023 5762:29 etcd
root     20782  0.7  0.2 113144  9712 ?        Ssl  Jun17 559:26 /usr/local/aegis/aegis_client/aegis_12_13/AliYunDun
root     32541  0.2  0.1 973496  7044 ?        Sl    2023 953:48 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 2379 -container-ip 172.17.0.2 -container-port 2379
root      7903  0.2  0.3 1291916 12924 ?       Sl   Aug01  16:34 /data/web/config-server/dist/config-server -e 127.0.0.1:2379 -cp /data/config
root       794  0.2  0.6 277484 24400 ?        Ssl   2023 968:38 node /showdoc_data/mock/index.js
root     20749  0.1  0.1  52004  5068 ?        Ssl  Jun17  90:13 /usr/local/aegis/aegis_update/AliYunDunUpdate
root     28207  0.1  0.2 685476 10940 ?        Ssl  Jul05  73:30 /usr/local/share/aliyun-assist/2.2.3.631/aliyun-service
root     28998  0.1  0.0  45036  2348 ?        Sl    2023 493:12 redis-server 127.0.0.1:6379
root      3715  0.1  0.2 165780  8280 ?        Ssl   2023 734:38 /usr/local/bin/redis-server *:6379

# 后台挂起运行,这个命令用于执行守护进程非常常用
nohup command >> command.log 2>&1 &

# 根据进程名称杀死进程
ps -ef | grep command | grep -v grep | awk '{print $2}' |  xargs kill -9

# top命令中对进程进行筛选:
# 在top界面中,输入:o+大写的COMMAND=你想筛选的命令关键词,即可只展示你想要的进程情况
u:查看指定用户进程
o:COMMAND=mysql   查看mysql进程
# 执行结果:
top - 09:49:21 up 297 days, 10:20,  1 user,  load average: 0.02, 0.05, 0.05
Tasks: 147 total,   2 running, 145 sleeping,   0 stopped,   0 zombie
%Cpu(s):  3.6 us,  3.6 sy,  0.0 ni, 92.9 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  3879912 total,   153576 free,  1478276 used,  2248060 buff/cache
KiB Swap:        0 total,        0 free,        0 used.  2104012 avail Mem 
add filter #2 (ignoring case) as: [!]FLD?VAL COMMSND=systemd
  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                  
    1 root      20   0  126448   4564   2216 S   0.0  0.1   5:04.85 systemd                                                                                  
  368 root      20   0   48384  13360  13028 S   0.0  0.3  10:27.73 systemd-journal                                                                          
  399 root      20   0   45456   1600   1116 S   0.0  0.0   0:00.19 systemd-udevd                                                                            
  568 root      20   0   26780   2032   1364 S   0.0  0.1   2:09.67 systemd-logind

# 查看进程启用时间
ps -p 1234 -o lstart
# 执行结果:
[root@dev /data]# ps -ef | grep redis-server
root      1182  1087  0 09:53 pts/0    00:00:00 grep --color=auto redis-server
root      3715     1  0  2023 ?        12:14:38 /usr/local/bin/redis-server *:6379
root     28998 28957  0  2023 ?        08:13:13 redis-server 127.0.0.1:6379
[root@dev /data]# ps -p 1087 -o lstart
                 STARTED
Tue Aug  6 09:35:19 2024
[root@dev /data]# ps -p 1 -o lstart
                 STARTED
Fri Oct 13 23:29:01 2023

# 查看进程执行时长
ps -p 1234 -o etime
# 执行结果:
[root@dev /data]# ps -p 1 -o etime
    ELAPSED
297-10:26:24

# 添加用户组
groupadd 组名

# 删除用户组
groupdel 组名

# 修改组名
groupmod -n 新组名 原组名

# 添加用户
useradd 用户名

# 删除用户
userdel 用户名

# 修改用户属性
usermod 
-c<备注>  修改用户帐号的备注文字。
-d登入目录>  修改用户登入时的目录。
-e<有效期限>  修改帐号的有效期限。
-f<缓冲天数>  修改在密码过期后多少天即关闭该帐号。
-g<群组>  修改用户所属的群组。
-G<群组>  修改用户所属的附加群组。
-l<帐号名称>  修改用户帐号名称。
-L  锁定用户密码,使密码无效。
-s<shell>  修改用户登入后所使用的shell。
-u<uid>  修改用户ID。
-U  解除密码锁定。

# 查看组
cat /etc/group
              
# 查看用户
cat /etc/passwd
              
# 分配文件权限
chmod +x filename
chmod 755 finename
              
# 分配文件所有者和所属组
chown user.group fine
chown user file

# 强大的文件查看器 lsof:
# 1.列出所有打开的文件:
lsof
# 备注: 如果不加任何参数,就会打开所有被打开的文件,建议加上一下参数来具体定位

# 2. 查看谁正在使用某个文件
lsof   /filepath/file

# 3.递归查看某个目录的文件信息
lsof +D /filepath/filepath2/
# 备注: 使用了+D,对应目录下的所有子目录和文件都会被列出

# 4. 比使用+D选项,遍历查看某个目录的所有文件信息 的方法
lsof | grep ‘/filepath/filepath2/’

# 5. 列出某个用户打开的文件信息
lsof  -u username
# 备注: -u 选项,u其实是user的缩写

# 6. 列出某个程序所打开的文件信息
lsof -c mysql
# 备注: -c 选项将会列出所有以mysql开头的程序的文件,其实你也可以写成lsof | grep mysql,但是第一种方法明显比第二种方法要少打几个字符了

# 7. 列出多个程序多打开的文件信息
lsof -c mysql -c apache

# 8. 列出某个用户以及某个程序所打开的文件信息
lsof -u test -c mysql

# 9. 列出除了某个用户外的被打开的文件信息
lsof   -u ^root
# 备注:^这个符号在用户名之前,将会把是root用户打开的进程不让显示

# 10. 通过某个进程号显示该进行打开的文件
lsof -p 1

# 11. 列出多个进程号对应的文件信息
lsof -p 123,456,789

# 12. 列出除了某个进程号,其他进程号所打开的文件信息
lsof -p ^1

# 13 . 列出所有的网络连接
lsof -i

# 14. 列出所有tcp 网络连接信息
lsof  -i tcp

# 15. 列出所有udp网络连接信息
lsof  -i udp

# 16. 列出谁在使用某个端口
lsof -i :3306

# 17. 列出谁在使用某个特定的udp端口
lsof -i udp:55

# 特定的tcp端口
lsof -i tcp:80

# 18. 列出某个用户的所有活跃的网络端口
lsof  -a -u test -i

# 19. 列出所有网络文件系统
lsof -N

# 20.域名socket文件
lsof -u

# 21.某个用户组所打开的文件信息
lsof -g 5555

# 22. 根据文件描述列出对应的文件信息
lsof -d description(like 2)

# 23. 根据文件描述范围列出文件信息
lsof -d 2-3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值