目录
1、命令字 【选项】 【参数1】【参数2】....这是一种常见的命令行指令格式,以下为你详细介绍:
5、查看内存信息 free 与cat /proc/meminfo
一、命令行基础
命令语法
1、命令字 【选项】 【参数1】【参数2】....这是一种常见的命令行指令格式,以下为你详细介绍:
命令字:
它是指令的核心,代表要执行的具体操作或工具名称 。比如在 Linux 系统中,ls
命令用于列出目录内容,rm
用于删除文件或目录 ,cp
用于复制文件或目录 。不同的命令字对应不同的功能,是系统识别用户意图的关键标识。
选项:
-
作用:用于调整命令的执行方式、行为特性等,可实现对命令功能的精细化控制。比如
-r
,表示递归复制,用于复制目录及其子目录和文件。 -
表示形式
:一般以短横线(-)或双短横线(--)开头。
-
短选项:由一个短横线加单个字母组成,例如
ls -l
中的-l
,它让ls
命令以长格式列出目录内容,显示文件权限、所有者、大小等详细信息。多个短选项可以合并使用,如ls -al
。 -
长选项:以双短横线加单词形式呈现,如
rm --recursive
等同于rm -r
,--recursive
选项让rm
命令递归删除目录及其内容 。长选项更具描述性,便于理解其功能。 -
参数 1:指定源文件或目录,即要被复制的对象。
-
参数 2:指定目标文件或目录,即复制后的文件或目录存放位置。
-
例子:在 Linux 等操作系统的终端命令中,“cp” 是 “copy” 的缩写,作为命令字,它的功能是用于复制文件或目录 。例如,若要将名为 “test.txt” 的文件复制到名为 “backup” 的文件夹中,可在终端输入 “cp test.txt backup/” 。此命令会将 “test.txt” 文件复制一份到 “backup” 文件夹里,原文件依然保留在原位置 。如果要复制整个目录,通常需要添加 “-r”(递归)选项,如 “cp -r myfolder newfolder”,这样会将 “myfolder” 目录及其包含的所有文件和子目录,复制到 “newfolder” 目录中 。
-
二、命令补齐
1、定义:
命令补齐是命令行界面(CLI)中的实用功能,能提高输入效率、减少错误,常见于 Linux、macOS 等系统的终端。
2、实现方式
-
Tab 键:在终端输入命令、文件名、目录名等时,按下 Tab 键,系统会尝试自动补齐。比如在 Linux 终端输入
ls /u
后按 Tab 键,如果系统中有/usr
目录 ,就会自动补全为ls /usr
。若存在多个匹配项,按一下 Tab 没反应,再按一下 Tab 会列出所有匹配的选项,方便用户选择。 -
文件名补齐:当输入文件相关命令(如
cp
、mv
等 )且需要指定文件名时,Tab 键同样适用。例如输入cp test
后按 Tab 键,若当前目录有test.txt
文件,会自动补全为cp test.txt
。
三、命令帮助
1、man定义:
man
是 Linux 系统中用于查看命令手册页(manual page)的命令,它能提供关于系统命令、函数、配置文件等详细的帮助信息。以下是 man
命令的详细介绍:
2、基本语法
man [选项] [命令名称](help只能查看内嵌命令)
选项(操作)
操作 作用
1、space(空格) 向下翻屏
2、b 向上翻屏
3、enter 向下翻屏
4、G 跳转到最后
5、g 跳转到第一行
6、q 退出
7、/要查找的词 比如在 man
手册中,当 输入 /
后接着输入我们要查找的关键字(比如 printf
)并按下回车键,会定位到第一个匹配的地方。然后按下 n
键,会继续向下查找下一个匹配的关键字位置;按下 N
键,则会向上查找前一个匹配的关键字位置。
[root@bogon ~]# man ls ”选项要求按多列输出,输出 将是一行一个。然而,输出到终端时,单列输出或多列输出是不确定的 。可以分别 用选项“ -1 ” 或“ -C ”来强制按单列或多列输出。 -C 多列输出,纵向排序。 -F 每个目录名加“ / ”后缀,每个 FIFO 名加“ | ”后缀, 每个可运行名加“ * ”后缀。 -R 递归列出遇到的子目录。 .......
四、系统基本操作命令
1、路径类型
绝对路径:命令前有斜杠
-
定义:从文件系统的根目录开始,到目标文件或目录的完整路径,它包含了从根目录到目标位置的所有目录信息,具有唯一性和确定性。
-
表示方法
:在不同的操作系统中,绝对路径的表示略有不同。
-
在 Windows 系统中,绝对路径通常以盘符(如 C:、D: 等)开头,后面跟着反斜杠(\)分隔的目录名和文件名。例如,
C:\ProgramFiles\Adobe\Photoshop.exe
就是一个绝对路径,表示 Photoshop.exe 文件位于 C 盘的 Program Files 目录下的 Adobe 文件夹中。 -
在 Unix 和类 Unix 系统(如 Linux)中,绝对路径以斜杠(/)开头,表示根目录,然后是各级子目录,目录之间用斜杠分隔。例如,
/home/user/Documents/file.txt
表示 file.txt 文件位于根目录下的 home 目录中的 user 文件夹的 Documents 目录下。
-
<[root@bogon etc]# cd /etc/>
相对路径:命令前无斜杠
-
定义:相对路径是相对于当前工作目录而言的文件或目录路径。它不包含从根目录开始的完整路径信息,而是从当前位置出发,通过相对的目录结构来指定目标文件或目录的位置。
[root@bogon ~]# cd etc/
2、操作命令
1、查看主机:hostname
[root@bogon etc]# hostname
bogon
2、查看网卡参数:ip address ifconfig
例1:[root@bogon etc]# ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0c:29:7b:ed:20 brd ff:ff:ff:ff:ff:ff inet 192.168.229.132/24 brd 192.168.229.255 scope global dynamic ens33 valid_lft 1261sec preferred_lft 1261sec inet6 fe80::20c:29ff:fe7b:ed20/64 scope link valid_lft forever preferred_lft forever 3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000 link/ether 52:54:00:3b:7b:fb brd ff:ff:ff:ff:ff:ff inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0 valid_lft forever preferred_lft forever 4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN group default qlen 1000 link/ether 52:54:00:3b:7b:fb brd ff:ff:ff:ff:ff:ff
例2:[root@bogon etc]# ifconfig ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.229.132 netmask 255.255.255.0 broadcast 192.168.229.255 inet6 fe80::20c:29ff:fe7b:ed20 prefixlen 64 scopeid 0x20<link> ether 00:0c:29:7b:ed:20 txqueuelen 1000 (Ethernet) RX packets 13293 bytes 1059514 (1.0 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 25805 bytes 34171785 (32.5 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1000 (Local Loopback) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255 ether 52:54:00:3b:7b:fb txqueuelen 1000 (Ethernet) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
ifconfig:输出格式相对比较简洁直观,适合初学者快速了解网络接口的基本信息。例如,它会将 IP 地址、子网掩码等信息分开显示,方便直接查看。
3、ip a 查看所有网卡,包括未启用的
[root@bogon etc]# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0c:29:7b:ed:20 brd ff:ff:ff:ff:ff:ff inet 192.168.229.132/24 brd 192.168.229.255 scope global dynamic ens33 valid_lft 1275sec preferred_lft 1275sec inet6 fe80::20c:29ff:fe7b:ed20/64 scope link valid_lft forever preferred_lft forever 3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000 link/ether 52:54:00:3b:7b:fb brd ff:ff:ff:ff:ff:ff inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0 valid_lft forever preferred_lft forever 4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN group default qlen 1000 link/ether 52:54:00:3b:7b:fb brd ff:ff:ff:ff:ff:ff
4、查看cpu信息
使用 cat
命令查看 /proc/cpuinfo
文件
/proc/cpuinfo
文件包含了 CPU 的详细信息,你可以使用 cat
命令查看该文件内容。此命令会输出如 CPU 型号、核心数、线程数、主频等详细信息。若你只想查看部分关键信息,可结合 grep
命令进行筛选。
[root@bogon etc]# cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 69 model name : Intel(R) Core(TM) i5-4300U CPU @ 1.90GHz stepping : 1 microcode : 0x24 cpu MHz : 2494.234 cache size : 3072 KB physical id : 0 siblings : 1 core id : 0 cpu cores : 1 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm invpcid_single ssbd ibrs ibpb stibp fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid xsaveopt arat spec_ctrl intel_stibp flush_l1d arch_capabilities bogomips : 4988.46 clflush size : 64 cache_alignment : 64 address sizes : 45 bits physical, 48 bits virtual power management:
只查看cpu中某部分,需结合grep实现
[root@bogon etc]# cat /proc/cpuinfo | grep "model name" model name : Intel(R) Core(TM) i5-4300U CPU @ 1.90GHz
5、查看内存信息 free 与cat /proc/meminfo
[root@bogon etc]# cat /proc/meminfo MemTotal: 1863004 kB MemFree: 949896 kB MemAvailable: 1158128 kB Buffers: 1084 kB Cached: 331524 kB SwapCached: 0 kB Active: 328380 kB Inactive: 271384 kB Active(anon): 268096 kB Inactive(anon): 9608 kB Active(file): 60284 kB Inactive(file): 261776 kB Unevictable: 0 kB Mlocked: 0 kB SwapTotal: 2097148 kB SwapFree: 2097148 kB Dirty: 8 kB Writeback: 0 kB AnonPages: 267180 kB Mapped: 88768 kB Shmem: 10548 kB Slab: 87808 kB SReclaimable: 34520 kB SUnreclaim: 53288 kB KernelStack: 8064 kB PageTables: 20196 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 3028648 kB Committed_AS: 2091816 kB VmallocTotal: 34359738367 kB VmallocUsed: 221744 kB VmallocChunk: 34359277564 kB Percpu: 56832 kB HardwareCorrupted: 0 kB AnonHugePages: 69632 kB CmaTotal: 0 kB CmaFree: 0 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB DirectMap4k: 118656 kB DirectMap2M: 1978368 kB DirectMap1G: 0 kB
free
[root@bogon etc]# free total used free shared buff/cache available Mem: 1863004 546192 949624 10548 367188 1157916 Swap: 2097148 0 2097148
区别:
信息详细程度:
free 命令:主要展示系统内存的核心信息,这些信息是经过处理和整合的,适用于快速查看系统内存的总体使用情况。
/proc/meminfo 文件:包含了极为详尽的内存信息,除了 free
命令所显示的内容外,还涉及如内核占用的内存、硬件相关的内存统计、内存回收状态等。如果你需要深入分析系统内存的具体状况,例如排查内存泄漏问题,那么 /proc/meminfo
文件能提供更丰富的数据支持。
功能用途:
free 命令:主要用于快速查看系统内存的实时使用情况,帮助用户对系统内存状态有一个整体的了解,常用于日常的系统监控和快速故障排查。
/proc/meminfo 文件:由于其信息详细,更适合用于深入的系统内存分析和性能调优,例如分析内存泄漏、研究内存分配策略等场景。
6、查看物理内存
[root@bogon etc]# lsmem RANGE SIZE STATE REMOVABLE BLOCK 0x0000000000000000-0x0000000007ffffff 128M online 否 0 0x0000000008000000-0x000000000fffffff 128M online 是 1 0x0000000010000000-0x0000000017ffffff 128M online 否 2 0x0000000018000000-0x0000000027ffffff 256M online 是 3-4 0x0000000028000000-0x0000000037ffffff 256M online 否 5-6 0x0000000038000000-0x0000000047ffffff 256M online 是 7-8 0x0000000048000000-0x000000007fffffff 896M online 否 9-15 Memory block size: 128M Total online memory: 2G Total offline memory: 0B
7、查看内存使用情况
[root@bogon etc]# free -m total used free shared buff/cache available Mem: 1819 533 926 10 359 1130 Swap: 2047 0 2047
8、查看磁盘使用情况
[root@bogon etc]# df -TH 文件系统 类型 容量 已用 可用 已用% 挂载点 devtmpfs devtmpfs 937M 0 937M 0% /dev tmpfs tmpfs 954M 0 954M 0% /dev/shm tmpfs tmpfs 954M 11M 944M 2% /run tmpfs tmpfs 954M 0 954M 0% /sys/fs/cgroup /dev/mapper/centos-root xfs 54G 4.5G 50G 9% / /dev/mapper/centos-home xfs 158G 39M 158G 1% /home /dev/sda1 xfs 1.1G 194M 870M 19% /boot tmpfs tmpfs 191M 13k 191M 1% /run/user/42 tmpfs tmpfs 191M 0 191M 0% /run/user/0
9、关机命令
init 0
10、重启命令
init 6
11、切换目录
cd
切换到上一级目录:输入 cd..
,会从当前目录切换到上一级目录。
停留在当前目录:输入cd.
切换到最近一次访问的目录:输入 cd -
,会在当前目录和上一次访问的目录之间切换。
12、查看目录内容
[root@bogon etc]# ls abrt mcelog adjtime mke2fs.conf aliases modprobe.d aliases.db modules-load.d alsa motd alternatives mtab anacrontab mtools.conf asound.conf multipath at.deny my.cnf audisp my.cnf.d audit nanorc avahi ndctl bash_completion.d netconfig bashrc .......
区别:
-
dir
:是 Windows 系统中用于查看目录内容的命令,在命令提示符(CMD)和 PowerShell 中都可以使用。它会列出当前目录下的文件和子目录的相关信息,包括名称、大小、修改日期和时间、文件属性等。 -
ls
:是 Linux 和 macOS 系统中用于列出目录内容的命令。默认情况下,它只显示当前目录下的文件和子目录的名称,但可以通过添加不同的选项来显示更多详细信息,如文件权限、所有者、文件大小等。 -
常用参数
-
dir
-
/a
:显示所有文件,包括隐藏文件和系统文件。例如dir /a
会列出当前目录下的所有文件,包括以.
开头的隐藏文件。 -
/w
:以宽格式显示,每行显示多个文件或目录的名称,不显示详细信息。适用于快速查看大量文件和目录的名称。 -
/s
:递归显示当前目录及其所有子目录中的文件和目录。可以用于查找特定文件或查看整个目录树的内容。
-
-
ls
-
-l
:以长格式显示文件和目录的详细信息,包括文件的权限、所有者、所属组、文件大小、修改时间等。这是最常用的选项之一,用于查看文件的详细属性。 -
-a
:显示所有文件和目录,包括隐藏文件。在 Linux 和 macOS 中,以.
开头的文件是隐藏文件,默认情况下ls
不会显示它们,使用-a
选项可以将其显示出来。 -
-h
:与-l
选项结合使用,以人类可读的格式显示文件大小。例如,文件大小会以KB
、MB
、GB
等单位显示,而不是以字节为单位,方便用户查看。
-
-
示例
-
在 Windows 系统的命令提示符中,使用
dir
命令查看C:\Users\Admin\Documents
目录下的内容,可以输入dir C:\Users\Admin\Documents
。如果要以宽格式显示,可输入dir /w C:\Users\Admin\Documents
。 -
在 Linux 或 macOS 系统的终端中,使用
ls
命令查看当前目录下的详细内容,可输入ls -l
。如果要查看/home/user
目录下包括隐藏文件在内的所有文件和目录,可输入ls -a /home/user
。
13、查看文件内容
cat
例:cat命:用于在终端中直接显示文件的内容,适合查看较小的文件。例如,要查看名为
test.txt的文件内容,可使用命令
cat test.txt` 。
14、打印所处目录的绝对路径
[root@bogon etc]# pwd /etc
15、date时间命令
[root@bogon ~]# date 2025年 05月 09日 星期五 14:26:47 CST
1、以年-月-日 时:分:秒
的格式显示当前日期和时间。
[root@bogon ~]# date +%Y-%m-%d-%M-%s 2025-05-09-32-1746772331
-
%Y
:四位数的年份,如2025
。 -
%m
:两位数的月份,范围是01
到12
。 -
%d
:两位数的日期,范围是01
到31
。 -
%H
:小时,以 24 小时制表示,范围是00
到23
。 -
%M
:分钟,范围是00
到59
。 -
%S
:秒,范围是00
到59
。
2、时间戳
[root@bogon ~]# date +%s 1746772636