提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
本文介绍一些Linux中日常使用频率较高的命令,希望可以分享和回顾学习,弥补不足。
1、free -lh
free -lh 是一个在类 Unix 系统中使用的命令,用于显示系统中内存的使用情况。这个命令属于 free 命令的一个变体,其中:
-l(–lohi)选项表示显示内存的高低水位标记。高水位标记(High water mark)是自系统启动以来分配的内存中最高的内存使用量。低水位标记(Low water mark)是系统空闲内存的最低点。
-h(–human-readable)选项表示以易读的格式显示内存大小(如 K、M 或 G),而不是默认的字节单位。
当你在终端中运行 free -lh 命令时,它会输出类似于下面的信息:
test@ubuntu:~$ free -lh
total used free shared buff/cache available
Mem: 7.8G 772M 5.6G 16M 1.4G 6.7G
Low: 7.8G 2.2G 5.6G
High: 0B 0B 0B
Swap: 1.0G 0B 1.0G
2、top
top 命令是一个实时的系统监控工具,它在类 Unix 系统中广泛使用。通过 top 命令,用户可以查看系统的实时进程和资源使用情况,包括 CPU、内存、磁盘 I/O 和网络状态等。
top - 11:06:14 up 30 min, 1 user, load average: 0.02, 0.02, 0.02
Tasks: 281 total, 1 running, 189 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.1 us, 0.1 sy, 0.0 ni, 99.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 8144672 total, 5858988 free, 791080 used, 1494604 buff/cache
KiB Swap: 1046524 total, 1046524 free, 0 used. 6973408 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1071 root 20 0 500872 109976 38048 S 1.3 1.4 0:07.95 Xorg
2347 sem 20 0 1293320 152964 81528 S 1.0 1.9 0:05.86 compiz
8 root 20 0 0 0 0 I 0.3 0.0 0:00.16 rcu_sched
2489 sem 20 0 530744 34768 29424 S 0.3 0.4 0:01.45 vmtoolsd
2813 sem 20 0 661424 36268 28508 S 0.3 0.4 0:02.91 gnome-terminal-
1 root 20 0 185272 5756 3848 S 0.0 0.1 0:02.67 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.02 kthreadd
4 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker/0:0H
6 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 mm_percpu_wq
7 root 20 0 0 0 0 S 0.0 0.0 0:00.01 ksoftirqd/0
9 root 20 0 0 0 0 I 0.0 0.0 0:00.00 rcu_bh
10 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
11 root rt 0 0 0 0 S 0.0 0.0 0:00.00 watchdog/0
12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cpuhp/0
13 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cpuhp/1
14 root rt 0 0 0 0 S 0.0 0.0 0:00.00 watchdog/1
15 root rt 0 0 0 0 S 0.0 0.0 0:00.09 migration/1
16 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/1
18 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker/1:0H
19 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cpuhp/2
20 root rt 0 0 0 0 S 0.0 0.0 0:00.00 watchdog/2
21 root rt 0 0 0 0 S 0.0 0.0 0:00.10 migration/2
22 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/2
24 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker/2:0H
25 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cpuhp/3
26 root rt 0 0 0 0 S 0.0 0.0 0:00.00 watchdog/3
27 root rt 0 0 0 0 S 0.0 0.0 0:00.10 migration/3
28 root 20 0 0 0 0 S 0.0 0.0 0:00.12 ksoftirqd/3
30 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker/3:0H
31 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cpuhp/4
32 root rt 0 0 0 0 S 0.0 0.0 0:00.00 watchdog/4
33 root rt 0 0 0 0 S 0.0 0.0 0:00.10 migration/4
34 root 20 0 0 0 0 S 0.0 0.0 0:00.05 ksoftirqd/4
36 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker/4:0H
37 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cpuhp/5
38 root rt 0 0 0 0 S 0.0 0.0 0:00.00 watchdog/5
39 root rt 0 0 0 0 S 0.0 0.0 0:00.10 migration/5
40 root 20 0 0 0 0 S 0.0 0.0 0:00.01 ksoftirqd/5
3、htop
top命令的加强版。
4、sudo fdisk -l
需要使用超级权限,用于查看磁盘信息。
/home/test$ sudo fdisk -l
Disk /dev/sda: 80 GiB, 85899345920 bytes, 167772160 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 123731967 123729920 59G 83 Linux
/dev/sda2 123734014 125827071 2093058 1022M 5 Extended
/dev/sda5 123734016 125827071 2093056 1022M 82 Linux swap / Solaris
5、lsblk
查看系统中的块设备,能够直观地展示系统中的存储设备。
test@ubuntu:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sr0 11:0 1 1024M 0 rom
sda 8:0 0 80G 0 disk
├─sda2 8:2 0 1K 0 part
├─sda5 8:5 0 1022M 0 part [SWAP]
└─sda1 8:1 0 59G 0 part /
sr1 11:1 1 1024M 0 rom
6、lsusb
用于查看usb设备,包括扩展坞也能够进行识别。
test@ubuntu:~$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub
Bus 002 Device 002: ID 0e0f:0003 VMware, Inc. Virtual Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
7、cat /proc/meminfo
可以查看内存信息。
test@ubuntu:~$ cat /proc/meminfo
MemTotal: 8144672 kB
MemFree: 5833488 kB
MemAvailable: 6961096 kB
Buffers: 411188 kB
Cached: 817328 kB
SwapCached: 0 kB
Active: 1321260 kB
Inactive: 491004 kB
Active(anon): 584924 kB
Inactive(anon): 15892 kB
Active(file): 736336 kB
Inactive(file): 475112 kB
Unevictable: 48 kB
Mlocked: 48 kB
SwapTotal: 1046524 kB
SwapFree: 1046524 kB
Dirty: 0 kB
Writeback: 0 kB
AnonPages: 583652 kB
Mapped: 195592 kB
Shmem: 17060 kB
Slab: 279760 kB
SReclaimable: 221372 kB
SUnreclaim: 58388 kB
KernelStack: 9808 kB
PageTables: 29592 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 5118860 kB
Committed_AS: 3170440 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 0 kB
VmallocChunk: 0 kB
HardwareCorrupted: 0 kB
AnonHugePages: 0 kB
ShmemHugePages: 0 kB
ShmemPmdMapped: 0 kB
CmaTotal: 0 kB
CmaFree: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 126784 kB
DirectMap2M: 5115904 kB
DirectMap1G: 5242880 kB
8、df -Th
用于查看系统中的分区信息和文件系统类型。
est@ubuntu:~$ df -Th
Filesystem Type Size Used Avail Use% Mounted on
udev devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs tmpfs 796M 9.5M 786M 2% /run
/dev/sda1 ext4 58G 47G 8.7G 85% /
tmpfs tmpfs 3.9G 212K 3.9G 1% /dev/shm
tmpfs tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
vmhgfs-fuse fuse.vmhgfs-fuse 204G 113G 92G 56% /mnt/hgfs
tmpfs tmpfs 796M 60K 796M 1% /run/user/1000
9、du -sh
用于查看当前文件夹所占用的实际磁盘空间大小。
test@ubuntu:~$ ls
examples.desktop test0 test1
test@ubuntu:~$ du -sh
56K .
10、tree
使用树形结构的方式,能够让我们清晰地查看整个文件夹的目录结构。
test@ubuntu:~$ tree
.
├── examples.desktop
├── test0
│ └── a.c
└── test1
└── b.c
2 directories, 3 files
11、uname -a
查看linux系统信息。
test@ubuntu:~$ uname -a
Linux ubuntu 4.15.0-142-generic #146~16.04.1-Ubuntu SMP Tue Apr 13 09:27:15 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
12、cat /etc/issue
查看Linux发行版本信息。
test@ubuntu:~$ cat /etc/issue
Ubuntu 16.04.7 LTS \n \l
test@ubuntu:~$
13、cat /proc/interrupts
查看Linux里面的中断信息。
test@ubuntu:~$ cat /proc/interrupts
CPU0 CPU1 CPU2 CPU3 CPU4 CPU5 CPU6 CPU7
0: 20 0 0 0 0 0 0 0 IO-APIC 2-edge timer
1: 0 0 0 1604 0 0 0 1450 IO-APIC 1-edge i8042
8: 1 0 0 0 0 0 0 0 IO-APIC 8-edge rtc0
9: 0 0 0 0 0 0 0 0 IO-APIC 9-fasteoi acpi
12: 0 35027 0 0 0 0 538 0 IO-APIC 12-edge i8042
14: 0 0 0 0 0 0 0 0 IO-APIC 14-edge ata_piix
15: 0 0 0 0 0 0 0 0 IO-APIC 15-edge ata_piix
16: 0 0 355 0 0 0 0 385 IO-APIC 16-fasteoi vmwgfx, snd_ens1371
17: 0 0 0 43758 10424 0 0 0 IO-APIC 17-fasteoi ehci_hcd:usb1, ioc0
18: 0 1 0 0 0 66 0 0 IO-APIC 18-fasteoi uhci_hcd:usb2
19: 0 0 0 0 5754 755 0 0 IO-APIC 19-fasteoi ens33
24: 0 0 0 0 0 0 0 0 PCI-MSI 344064-edge PCIe PME, pciehp
25: 0 0 0 0 0 0 0 0 PCI-MSI 346112-edge PCIe PME, pciehp
26: 0 0 0 0 0 0 0 0 PCI-MSI 348160-edge PCIe PME, pciehp
27: 0 0 0 0 0 0 0 0 PCI-MSI 350208-edge PCIe PME, pciehp
28: 0 0 0 0 0 0 0 0 PCI-MSI 352256-edge PCIe PME, pciehp
29: 0 0 0 0 0 0 0 0 PCI-MSI 354304-edge PCIe PME, pciehp
30: 0 0 0 0 0 0 0 0 PCI-MSI 356352-edge PCIe PME, pciehp
31: 0 0 0 0 0 0 0 0 PCI-MSI 358400-edge PCIe PME, pciehp
14、cat /proc/devices
查看Linux里面的设备信息。
test@ubuntu:~$ cat /proc/devices
Character devices:
1 mem
4 /dev/vc/0
4 tty
4 ttyS
5 /dev/tty
5 /dev/console
5 /dev/ptmx
5 ttyprintk
6 lp
7 vcs
10 misc
13 input
14 sound/midi
14 sound/dmmidi
21 sg
29 fb
89 i2c
99 ppdev
108 ppp
116 alsa
128 ptm
136 pts
180 usb
189 usb_device
204 ttyMAX
226 drm
244 hidraw
245 aux
246 bsg
247 hmm_device
248 watchdog
249 rtc
250 dax
251 dimmctl
252 ndctl
253 tpm
254 gpiochip
Block devices:
7 loop
8 sd
9 md
11 sr
65 sd
66 sd
67 sd
68 sd
69 sd
70 sd
71 sd
128 sd
129 sd
130 sd
131 sd
132 sd
133 sd
134 sd
135 sd
253 device-mapper
254 mdp
259 blkext
15、ps -aux
列出系统中当前正在运行的一些进程信息。
test@ubuntu:~$ ps -aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 185272 5756 ? Ss 10:35 0:02 /sbin/init auto noprompt
root 2 0.0 0.0 0 0 ? S 10:35 0:00 [kthreadd]
root 4 0.0 0.0 0 0 ? I< 10:35 0:00 [kworker/0:0H]
root 6 0.0 0.0 0 0 ? I< 10:35 0:00 [mm_percpu_wq]
root 7 0.0 0.0 0 0 ? S 10:35 0:00 [ksoftirqd/0]
root 8 0.0 0.0 0 0 ? I 10:35 0:00 [rcu_sched]
root 9 0.0 0.0 0 0 ? I 10:35 0:00 [rcu_bh]
root 10 0.0 0.0 0 0 ? S 10:35 0:00 [migration/0]
root 11 0.0 0.0 0 0 ? S 10:35 0:00 [watchdog/0]
root 12 0.0 0.0 0 0 ? S 10:35 0:00 [cpuhp/0]
root 13 0.0 0.0 0 0 ? S 10:35 0:00 [cpuhp/1]
root 14 0.0 0.0 0 0 ? S 10:35 0:00 [watchdog/1]
root 15 0.0 0.0 0 0 ? S 10:35 0:00 [migration/1]
root 16 0.0 0.0 0 0 ? S 10:35 0:00 [ksoftirqd/1]
root 18 0.0 0.0 0 0 ? I< 10:35 0:00 [kworker/1:0H]
root 19 0.0 0.0 0 0 ? S 10:35 0:00 [cpuhp/2]
root 20 0.0 0.0 0 0 ? S 10:35 0:00 [watchdog/2]
root 21 0.0 0.0 0 0 ? S 10:35 0:00 [migration/2]
root 22 0.0 0.0 0 0 ? S 10:35 0:00 [ksoftirqd/2]
root 24 0.0 0.0 0 0 ? I< 10:35 0:00 [kworker/2:0H]
root 25 0.0 0.0 0 0 ? S 10:35 0:00 [cpuhp/3]
# 总结
以上就是在linux中日常使用的一些命令,后续会进行补充,以期提高我们的工作效率,让Linux开发变得有趣。