目录
一、打开Linux系统终端的方式
(1)图形化打开
进入Linux系统桌面,鼠标右击选择打开终端
(2)快捷键打开
-
第一步:打开开关管按钮,点击设置选项
-
第二步:下划找到设备
-
第三步:点击设置键盘快捷键,下划找到添加,点击添加设置
-
第四步:1.鼠标右击打开终端;2.输入which gnome-terminal;3.右键复制路径;4.输入快捷名称;5.粘贴路径
-
第五步:点击快捷键
-
输入终端快捷键:win+R
(3)输入命令打开
-
按ALT+F2
-
输入:gnome-terminal
二、命令行基础
1、命令语法
-
选项可以有多个
-
参数也可以有多个
命令字 [选项] [参数1] [参数2]
2、命令类型
-
内部命令:集成与shell解释器之内的命令,运行速度更快,也成为内嵌命令。常见内部命令:cd、echo、alias、exit、source
命令 功能 cd 切换目录 echo 输出文本 alias 定义命令别名 exit 退出当前shell source 当前shell中执行脚本 [root@localhost ~]# type cd cd 是 shell 内嵌 [root@localhost ~]# type ls ls 是 `ls --color=auto' 的别名 [root@localhost ~]#
-
外部命令:集成与shell解释器之外的命令,能够完成特定功能的脚本文件或二进制程序文件。
命令 功能 ls 列出目录内容 grep 文本搜索 vim 文本编辑器 python python解释器 ps 查看进程状态 alias ls='ls --color=auto' /usr/bin/ls [root@localhost ~]#
-
关键区别
特性 内部命令 外部命令 实现方式 嵌入在shell进程中 独立的可执行文件 执行速度 快(无需启动新进程) 较慢(需创建新进程) 依赖关系 依赖shell本身 依赖文件系统和PATH环境变量 可移植性 受限于shell本身 跨shell通用 查看方式 使用type或help 使用which或whereis
3、type命令
-
作用:查看命令类型
[root@localhost ~]# type ls ls 是 `ls --color=auto' 的别名 [root@localhost ~]# type cd cd 是 shell 内嵌
-
语法:type需要查看的命令字
4、命令补齐
-
随便输入字母
-
按两次tab
-
输入到指定字母后没有其他命令则会补齐
[root@localhost ~]# sys
sysctl systemd-firstboot
system-config-abrt systemd-hwdb
system-config-printer systemd-inhibit
system-config-printer-applet systemd-loginctl
systemctl systemd-machine-id-setup
systemd-analyze systemd-notify
systemd-ask-password systemd-nspawn
systemd-cat systemd-path
systemd-cgls systemd-run
systemd-cgtop systemd-stdio-bridge
systemd-coredumpctl systemd-sysv-convert
systemd-delta systemd-tmpfiles
systemd-detect-virt systemd-tty-ask-password-agent
systemd-escape sys-unconfig
5、命令帮助
5.1、help
查看指定的内部命令帮助信息
help 命令名
help cd 查看cd内置命令的说明
help alias 查看alias的用法
5.2、查看指定的外部命令帮助信息
命令名 --help
ls --help 查看ls常用参数
grep --help 查看grep的用法
5.3、man
-
man [选项] 命令名
man ls 查看ls命令的手册
man grep 查看grep命令的手册
man man 查看man命令的自身手册
-
功能介绍
操作 | 作用 |
---|---|
space | 向下翻屏 |
b | 向上翻屏 |
enter | 向下翻行 |
k | 向上翻行 |
G | 跳转到最后 |
1G|gg | 跳转第一行 |
q | 退出 |
/关键字 | 搜索 n:根据关键词向下查找;N:根据关键词向上查找 |
5.4、info
-
info [选项] [命令名]
info grep 查看grep的info的文档
info gcc 查看GCC编译器的详细文档
-
功能介绍
操作 | |
---|---|
tob | 节点之间跳转 |
enter | 进入某个节点页面 |
n | 跳转下一个节点 |
p | 跳转上一个节点 |
u | 跳转上一级节点 |
q | 退出 |
三、系统基本操作命令
1、路径类型
-
绝对路径:每次都从/(根)出发
-
相对路径:从当前路径出发
2、操作命令
-
查看主机名:hostname
[root@localhost ~]# hostname localhost.localdomain
-
查看网卡参数,默认网卡名称:ens33
1、只查看己启用网卡 ifconfig ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.234.131 netmask 255.255.255.0 broadcast 192.168.234.255 inet6 fe80::314d:edaa:9d9d:52fb prefixlen 64 scopeid 0x20<link> ether 00:0c:29:f7:ff:c1 txqueuelen 1000 (Ethernet) RX packets 39539 bytes 5022894 (4.7 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 96943 bytes 136919823 (130.5 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 2、查看所有网卡,包括未启用的 ip a 3、查看指定网卡参数 ifconfig 网名称
-
查看CPU信息
1、cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 183 model name : Intel(R) Core(TM) i7-14650HX stepping : 1 microcode : 0xffffffff cpu MHz : 2419.199 cache size : 30720 KB physical id : 0 siblings : 1 core id : 0 cpu cores : 1 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 32 wp : yes 2、lscpu rchitecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 1 On-line CPU(s) list: 0 Thread(s) per core: 1 Core(s) per socket: 1 座: 1 NUMA 节点: 1 厂商 ID: GenuineIntel CPU 系列: 6 型号: 183 型号名称: Intel(R) Core(TM) i7-14650HX 步进: 1 CPU MHz: 2419.199 BogoMIPS: 4838.39 超管理器厂商: VMware 虚拟化类型: 完全
-
查看内存信息
1、cat /proc/meminfo MemTotal: 1863004 kB MemFree: 103716 kB MemAvailable: 697576 kB Buffers: 96 kB Cached: 714340 kB SwapCached: 0 kB Active: 841056 kB Inactive: 397912 kB 2、lsmem 查看物理内存 RANGE SIZE STATE REMOVABLE BLOCK 0x0000000000000000-0x000000007fffffff 2G online 否 0-15 Memory block size: 128M Total online memory: 2G Total offline memory: 0B 3、free -m查看内存的使用情况(m以MB为单位显示,g以GB为单位显示但是有小数点不显示) [root@localhost ~]# free -m total used free shared buff/cache available Mem: 1819 978 100 10 740 680 Swap: 2047 0 2047
-
查看磁盘使用情况
df -Th [root@localhost ~]# df -Th 文件系统 类型 容量 已用 可用 已用% 挂载点 devtmpfs devtmpfs 894M 0 894M 0% /dev tmpfs tmpfs 910M 0 910M 0% /dev/shm tmpfs tmpfs 910M 11M 900M 2% /run tmpfs tmpfs 910M 0 910M 0% /sys/fs/cgroup /dev/mapper/centos-root xfs 50G 4.2G 46G 9% / /dev/sda1 xfs 1014M 185M 830M 19% /boot /dev/mapper/centos-home xfs 147G 37M 147G 1% /home tmpfs tmpfs 182M 36K 182M 1% /run/user/0
-
关机命令
1、poweroff (关机等待时间60s) 2、shutdown now (不加now,关机等待时间60s) 3、init 0
-
重启命令
1、reboot 2、shutdown -r 3、init 6
-
切换目录
cd (/根目录;~家目录) cd . 当前目录 cd .. 上一级目录 [root@localhost /]# cd [root@localhost ~]# cd . [root@localhost ~]# cd ..
-
查看目录内容
1、dir [root@localhost /]# dir bin etc lib64 opt run sys var boot home media proc sbin tmp dev lib mnt root srv usr 2、ls [root@localhost /]# ls bin etc lib64 opt run sys var boot home media proc sbin tmp dev lib mnt root srv usr
-
查看文件内容
cat 文件路径(要精细到文件) [root@localhost /]# cat /etc/yum.conf [main] cachedir=/var/cache/yum/$basearch/$releasever keepcache=0 debuglevel=2 logfile=/var/log/yum.log exactarch=1 obsoletes=1 gpgcheck=1 plugins=1 installonly_limit=5
-
打印所处目录的绝对路径
pwd
四、系统信息产看与修改
1、主机名管理
-
临时修改重启失效 hostname new_name
hostname new_name
-
刷新
bash
-
永久修改
hstnamectl set-hostname new_hostname
-
配置文件修改,重启生效
vim /etc/hostname
2、时间管理
2.1、系统时间管理
-
date命令
用于显示或者设置系统的日期和时间
-
语法
date [选项] [+格式] date +%Y%m%d-%H%M%S date +%Y-%m-%d-%H:%M:%S
[root@localhost /]# date 2025年 05月 09日 星期五 15:17:42 CST [root@localhost /]# date +%Y%m%-d%H%M%S 20250509-153448 [root@localhost /]# date +%Y-%m-%d-%H:%M:%S 2025-05-09-15:40:30
参数 含义 示例值 %Y 年份 2025 %m 月份 05 %d 日期 09 %H 小时 15 %M 分钟 30 %S 秒 10 -
选项
选项 | 说明 |
---|---|
d,date=STRING | 根据字符串计算并显示日期和时间 |
f,file=FILE | 从文件中读取日期和时间 |
r,reference=FILE | 根据文件的修改时间显示日期和时间 |
s,set=STRING | 设置日期和时间 |
t,time=STRING | 根据时间字符串设置日期 |
u,utc,universal | 显示或设置UTC时间 |
+FORMAT | 按照格式字符串输出日期和时间 |
date -d@大秒数 | 将秒数显示为时间格式,原点为计算机元年时间,即1970年1月1日8点 |
2.2、硬件时间管理
-
hwclock命令
现在硬件bios时间
时间同步
hwclock -w [root@localhost /]# hwclock 2025年05月09日 星期五 15时52分33秒 -0.853246 秒
3、显示输出系统信息
3.1、uname命令
-
用于显示系统信息,包括操作系统名称、主机名、内核版本等。
-
语法
uname [选项]
-
选项
选项 作用 uname 显示系统内核名称 -a 显示所有系统信息,包括操作系统名称、内核版本、主机名、构架 -s 显示操作系统名称 -n 显示主机名 -r 显示内核版本号 -m 显示系统架构 -p 显示处理器类型 -o 显示操作系统发行商 -i 显示硬件平台信息 [root@localhost /]# uname -a Linux hou 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux [root@localhost /]# uname -n hou [root@localhost /]# uname -r 3.10.0-1160.el7.x86_64
3.2、显示系统版本
cat /etc/redhat-release
#RedHat系列特有
cat /etc/centos-release
#所有Linux系统都有
cat /etc/os-release
通用
[root@localhost /]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
[root@localhost /]#
[root@localhost /]# cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
五、linux系统常用命令
序号 | 命令字 | 作用 |
---|---|---|
1 | ls | 列出目录中的文件和子目录 |
2 | awk | 文本处理工具,用于从文本文件中提取和处理数据 |
3 | cal | 显示日历,列如:cal2025 |
4 | cat | 查看 文件内容,例如:cat filename.txt |
5 | cd | 切换目录,例如:cd /path/to/directory |
6 | chmod | 更改文件或目录的权限,例如:chmod 755 filename |
7 | chown | 更改文件或目录的所有者,例如:chown user:group file_or_directory |
8 | cp | 复制文件或目录,例如:cp source_file destination 或 cp -r source_directory destination |
9 | curl | 发送 HTTP 请求,例如:curl -I URL |
10 | date | 显示系统日期和时间 |
11 | df | 显示磁盘使用情况,例如:df -h(以人类可读的格式显示) |
12 | diff | 比较文件和目录的差异,例如:diff file1.txt file2.txt |
13 | du | 显示目录的磁盘使用情况,例如:du -sh directory_name |
14 | exit | 退出当前终端会话 |
15 | find | 在文件系统中查找文件,例如:find /path/to/search -name “filename” |
16 | firewall-cmd | 管理防火墙规则,例如:firewall-cmd --zone=public --add-port=80/tcp -- permanent |
17 | free | 显示系统内存使用情况 |
18 | grep | 在文件中搜索文本,例如:grep “pattern”filename.txt |
19 | groupadd | 创建新用户组,例如:groupadd groupname |
20 | head | 显示文件的前几行,默认为前 10 行,例如:head filename.txt |
21 | history | 显示命令历史记录 |
22 | hostname | 显示或设置主机名 |
23 | ifconfig | 显示网络接口的配置信息 |
24 | kill | 终止进程,例如:kill process_id |
25 | less | 逐页查看文件内容,例如:less filename.tx |
26 | ln | 创建链接(符号链接或硬链接),例如:ln -s source_file link_name |
27 | man | |
28 | mkdir | 创建新目录,例如:mkdir new_directory |
29 | moer | 逐页查看文件内容,但不能向前翻页,只能向下滚动,例如:more filename.txt |
30 | mv | 移动文件或目录,也可用于重命名文件,例如:mv source destination |
31 | netstat | 显示网络统计信息,例如:netstat -tuln |
32 | passwd | 更改用户密码,例如:passwd username |
33 | ping | 测试与远程主机的网络连接,例如:ping google.com |
34 | ps | 显示当前进程的信息,例如:ps aux |
35 | pwd | 显示当前工作目录的路径 |
36 | reboot | 重启系统,例如:reboot |
37 | rm | 删除文件或目录,例如:rm file.txt 或 rm -rdirectory |
38 | rmdir | 删除空目录,例如:rmdir directory_name |
39 | rpm | 安装和管理 RPM 软件包,例如:rpm -i package.rpm |
40 | scp | 通过 SSH 复制文件,例如:scp file.txt remote_username@remote_host:/remote/directory |
41 | sed | 流编辑器,用于处理文本流,例如:sed ‘s/old_text/new_text/’ filename.txt |
42 | shtdown | 关闭或重启系统,例如:shutdown -h now(立即关机)或 shutdown -r now(立即重启) |
43 | ssh | 使用 SSH 连接到远程主机,例如:ssh username@hostname |
44 | ssh-keygen | 生成 SSH 密钥对 |
45 | systemctl | 管理系统服务,例如:systemctl start service_name 或 systemctl stop service_name |
46 | tail | 显示文件的最后几行,默认为最后 10 行,例如:tail filename.txt |
47 | tar | 创建和解压 tar 归档文件,例如:tar -zxvf archive.tar.gz |
48 | top | 动态显示系统资源使用情况和进程信息 |
49 | toouch | 创建空文件,例如:touch filename.txt |
50 | uptime | 显示系统的运行时间和平均负载 |
51 | useradd | 创建新用户,例如:useradd username |
52 | userdel | 删除用户,例如:userdel username |
53 | usermod | 修改用户属性,例如:usermod -aG groupname username |
54 | wget | 下载文件或内容,例如:wget URL |
55 | whatis | 显示命令的简短描述,例如:whatis command |
56 | who | 显示当前登录用户 |
57 | whoami | 显示当前登录用户的用户名 |
58 | yum | CentOS 7 的包管理器,用于安装、更新和删除软件包 |
59 | zip/unzip | 压缩和解压 ZIP 文件 |
六、free命令中的字段
-
在 Linux 系统中, buffer 和 cache 是内存管理中的两个重要概念,它们都用于提高系统的读写效率,但用途和机制有所不同。
Buffer 和Cache 的区别
1. Buffer(缓冲区)
-
定义:Buffer 是系统用于临时存储数据的区域,主要用于处理磁盘 I/O 操作。它主要与磁盘的写操作相关。
-
作用:Buffer 用于暂存即将写入磁盘的数据,或者从磁盘读取的数据。它确保数据在写入磁盘之前被正确组织,
或者在读取时被高效地传递。
-
特点:
Buffer 的数据通常与磁盘块的写入操作相关。
它是一个“中转站”,数据在写入磁盘之前会先存储在 Buffer 中。
2. Cache(缓存)
-
定义:Cache 是系统用于存储频繁访问的数据的区域,主要用于提高读取速度。
-
作用:Cache 用于暂存从磁盘读取的数据,以便下次访问时可以直接从内存中读取,而无需再次访问磁盘。
-
特点:
Cache 的数据通常与磁盘的读取操作相关。
它是一个“快速访问区”,数据在被访问后会存储在 Cache 中,以便后续快速读取。
相似的生活案例
-
假设你有一个图书馆,里面有大量的书籍(类似磁盘中的数据)。你有一个助手(类似 CPU),他需要频繁地从图书馆中获取书籍来完成工作。
Buffer 的类比
-
场景:你有一个助手,他需要把一些新书(新数据)放入图书馆的书架上(写入磁盘)。但他不想每次都直接走到书架前,因为这样效率太低。
-
解决方案:你给他一个手推车(Buffer),他先把新书放在手推车里,等手推车满了或者到了合适的时候,再一起把书放到书架上。手推车在这里的作用就是暂存即将写入的数据,提高效率。
Cache 的类比
-
场景:你的助手需要频繁地从图书馆中借阅一些热门书籍(读取数据),但他不想每次都去图书馆找书,因为这样太浪费时间。
解决方案:你在图书馆外设置了一个小书架(Cache),把一些热门书籍放在那里。当助手需要这些书时,他可以直接从这个小书架上拿,而不用每次都去图书馆。小书架在这里的作用就是暂存频繁访问的数据,提高读取速度。
七、总结
1、注意内部命令和外部命令的区别和用法;man和info的区别
2、命令补齐时要连续按两次tab键;
3、查看CPU要命令 cat后面要加空格
4、关机命令:poweroff 与shutdown (关机时间等待60scha
5、cat 文件路径(要精确到要找的文件)
6、free -m查看内存的使用情况(m以MB为单位显示,g以GB为单位显示但是有小数点不显示)