[Linux] 入门指令详解

news2024/7/4 4:22:37

目录

ls指令

pwd指令

whoami指令

cd指令

clear指令

touch指令

mkdir指令

rmdir指令

rm指令

man指令

cp指令

mv指令

cat指令

tac指令

more指令

less指令

head指令

tail指令

如何读取文件中间某一段内容?

date指令

cal指令

find指令

which指令

alias指令

grep指令

su指令 

如何添加与删除用户?

zip/unzip指令

tar指令

file指令

bc指令

uname指令

几个重要的热键

关机指令

指令拓展


ls指令

在Windows当中会自动显示当前目录当中的所有子目录与文件,我们若想在Linux当中查看当前目录当中的所有子目录与文件就需要用到ls指令。

语法: ls 选项 目录或文件
功能: 对于目录,该命令列出该目录下的所有子目录与文件;对于文件,该命令列出文件名以及其他信息。

常用选项:
1)-a 列出目录下的所有文件,包括以 . 开头的隐含文件。

小贴士:在Linux当中,每个目录下默认存在两个隐含文件 . 和 . . ( . 代表当前目录 . . 代表上级目录)。

2)-d 将目录像文件一样显示,而不是显示其下的文件。

3)-i 输出文件的i节点的索引信息。

4)-k 以k字节的形式表示文件的大小。

5)-l 列出文件的详细信息。

小技巧:ls -l 也可以简写为 ll。

6)-n 用数字的UID,GID代替名称。

7)-F 在每个文件名后附上一个字符以说明该文件的类型。(“*”表示可执行的普通文件,“/”表示目录,“@”表示符号链接,“|”表示FIFOs,“=”表示套接字sockets)

8)-r 对目录反向排序。

9)-t 以时间排序。

10)-s 在文件名前输出该文件的大小。

11)-R 列出所有子目录下的文件。

12)-1 一行只输出一个文件。

pwd指令

语法: pwd
功能: 显示用户当前所在的目录。

whoami指令

语法: whoami
功能: 显示用户当前的身份。

cd指令

在Linux系统中,磁盘上的文件和目录被组成一棵目录树,其中每个结点都是目录或文件。

在Windows当中,我们可以通过鼠标点击的方式在各个目录之间来回跳转,而在Linux当中我们需要用到cd指令来实现该操作。

语法: cd 目录名
功能: 改变工作目录。将当前工作目录改变到指定的目录下。

常用方式:
1)cd . . (返回上级目录)。

2)cd 绝对路径 (使用绝对路径改变当前工作目录)。

3)cd 相对路径 (使用相对路径改变当前工作目录)。

4)cd ~ (进入主工作目录)。

小贴士:普通用户的主工作目录默认为 /home/xxx,root用户的主工作目录默认为 /root。

5)cd - (返回上一次所在目录)。

clear指令

语法: clear
功能: 清空屏幕。

touch指令

语法: touch 选项 文件
功能: touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。

常用选项
1)-a 或 --time=atime 或 --time=access 或 --time=use 只更改存取时间。
2)-c 或 --no-create 不建立任何文档。
3)-d 使用指定的日期时间,而非现在的时间。
4)-f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
5)-m 或 --time=mtime 或–time=modify 只更改变动时间。
6)-r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
7)-t 使用指定的日期时间,而非现在的时间。

mkdir指令

在Windows中我们通过Ctrl+Shift+N在当前目录新建一个空目录,我们若是想在Linux当中新建一个空目录,则需要用到mkdir指令。

语法: mkdir 选项 dirname
功能: 在当前目录下创建一个名为“dirname”的目录。

常用选项:
1)-p dirname可以是一个路径名称,此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录。

注意:此处的路径也可以是相对路径。

rmdir指令

rmdir是一个与mkdir相对应的指令,mkdir是建立目录,而rmdir是删除目录。

语法: rmdir 选项 dirname
功能: 删除空目录。
适用对象: 具有当前目录操作权限的所有使用者。

常用选项:
1)-p 当子目录被删除后如果父目录也变成空目录的话,就连同父目录一起删除。

rm指令

rmdir指令只能用于删除空目录,若是要相删除其他文件,则需要用到rm指令。

语法: rm 选项 dirname
功能: 删除文件或目录。
适用对象: 所有使用者。

常用选项:
1)-i 删除前逐一询问确认。

2)-f 即使文件属性为只读(即写保护),亦直接删除。

3)-r 删除目录及其下所有文件(递归式删除)。

小技巧: 当你要删除当前目录下的所以文件时,可以使用通配符 * 。

但是为了保险起见,一般使用通配符删除当前目录下的所有文件时,建议在通配符 * 前面加上 . / 告知系统要删除的资源在当前目录下( . 代表当前目录)。

 

特别注意: 上面说到 -f 是强制性删除,-r 是递归式删除,这两个结合在一起就是递归式强制性删除,千万不要执行以下指令,因为在Linux当中没有类似回收站的东西也没有撤销删除的功能,删除指令一旦执行则是不可逆的。

该指令的意思是从(/)根目录开始进行递归式强制性删除,即删除根目录下所有文件,这是一个大忌,典型的删库跑路行为。所以,当你要使用“rm -rf dirname”这条指令前,你必须明确以下两点:
 1、你清楚的知道你自己正在干什么。
 2、执行该命令后所造成的结果是你能够承担的。

man指令

Linux的指令有很多参数,我们不一定能全部记住,我们可以通过查看联机手册获取帮助。访问Linux手册页的指令便是man。

语法: man 选项 指令
功能: 查看指令的使用规则等。

常用选项:
1)-k 根据关键字搜索联机帮助。
2)num 只在第num章节查找。
3)-a 将所有章节的查找结果都显示出来。

手册分为8章:
1)可执行程序或shell命令。
2)系统调用(内核提供的函数)。
3)库函数(程序库中的函数)。
4)特殊文件(通常在/dev中找到)。
5)文件格式和约定,如/etc/passwd。
6)游戏。
7)杂项。
8)系统管理命令(通常仅限于root用户)。

cp指令

在Windows中我们可以通过Ctrl+C和Ctrl+V将一个地方的文件或目录复制一份到另一个地方,我们若是在Linux当中想要完成该操作,就要用到cp指令。

语法: cp 选项 源文件或目录 目标文件或目录
功能: 复制文件或目录。

常用选项:
1)-f 或 --force 强行复制文件或目录,不论目标文件或目录是否已经存在。

2)-i 或 --interactive 覆盖文件之前先询问用户。

3)-r 或 -R 递归处理,将指定目录下的文件与子目录一并处理,若源文件或目录的形态不属于目录或符号链接,则一律视为普通文件处理。

小技巧: 当我们需要将当前目录的所有内容进行拷贝时,可以用到通配符进行拷贝。

mv指令

在Windows中我们经常使用Ctrl+X和Ctrl+V将一个地方的文件或目录移动到另一个地方,我们若是要在Linux当中完成此操作,则需要使用mv指令。

语法: mv 选项 源文件或目录 目标文件或目录
功能: 视mv指令当中两个参数的不同而不同。
1)当第二个参数是不存在的名称时,mv指令完成文件重命名或目录重命名。

2)当第二个参数是已存在目录名称时,mv指令将文件移动置该目录中。

常用选项:
1)-f 强制的意思(force),如果目标文件已经存在,不会询问而直接覆盖。

2)-i 若目标文件已经存在,则会询问是否覆盖。

cat指令

在Linux当中无法想Windows一样用鼠标点开某一文件进行阅读,要想阅读文件可以用cat指令。

语法: cat 选项 文件
功能: 查看目标文件的内容。

常用选项:
1)-b 对非空输出行编号。

2)-n 对输出的所有行编号。

3)-s 禁止重复的空输出行。

注意: cat指令会将目标文件内容全部打印到屏幕上。若是目标文件内容过大,则会导致刷屏(直到将文件内容全部打印到屏幕上)。因此cat指令一般仅适用于查看内容较少的文件。

tac指令

使用tac指令,我们可以反向查看目标文件的内容。

语法: cat 文件
功能: 反向查看目标文件的内容。

more指令

上面说到,cat指令仅适用于查看内容较少的文件,我们若是要查看海量信息文件,则可以适用more指令。

语法: more 文件
功能: 查看目标文件的内容。

注意: more指令只能通过按回车键进行下翻操作,无法进行上翻操作,并且more指令在查看之前会先加载整个文件。

less指令

上面的more指令只能进行下翻操作,而less指令可以同时支持上翻和下翻操作。

语法: less 选项 文件
功能: 既有查看目标文件的内容的功能,又有搜索功能。

注意: less指令可以通过按上下键进行上翻和下翻操作,并且less指令在查看之前不会加载整个文件。

常用选项:
1)-i 忽略搜索时的大小写。
2)-N 显示每行的行号。
3)/字符串 向下搜索“字符串”的功能。
4)?字符串 向上搜索“字符串”的功能。
5)n 重复前一个搜索(与/或?有关)。
6)N 反向重复前一个搜索(与/或?有关)。

head指令

语法: head 选项 文件
功能: 用于显示文件的开头至标准输出中,默认head指令打印其相应文件的开头10行。

常用选项:
1)-n 需要显示的行数。

tail指令

语法: tail 选项 文件
功能: 用于显示文件的末尾至标准输出中,默认tail指令打印其相应文件的末尾10行。

常用选项:
1)-n 需要显示的行数。

2)-f 循环读取。

如何读取文件中间某一段内容?

例如,现在test.txt文件当中有十万行内容,我们如何读取第101至110行
在认识了head和tail指令后,你可能很容易想到如下方法:先用head指令读取test.txt文件中的前110行存入临时文件temp.txt中,然后将temp.txt文件的后10行打印输出即可。

注意: >(输出重定向),图中第一条指令的意思是,将本应该输出到屏幕的内容输出重定向到temp.txt文件当中。

这样写显然有点麻烦(还需要创建一个临时文件),有一种简便的方式可以实现该操作,该方式需要用到“命令行管道”。
在指令中管道用“|”来表示,管道左边接收产生的数据,右边读取数据。

因此我们可以将test.txt文件的前110行从管道左侧输入管道,并在管道右侧读取数据进行进一步的操作即可。

date指令

语法: date 选项 格式
功能: 用于显示时间、设置时间、完成时间与时间戳之间的相互转换等。

用法一: 用于显示时间,使用者可以选定想要显示的格式,格式设定为一个加号,后接数个标记,其中常用的标记如下:
1)%H 显示当前的小时,范围(00~23)。

2)%M 显示当前的分钟,范围(00~59)。

3)%S 显示当前的秒数,范围(00~59)。

 4)%X 相当于%H:%M:%S。

5)%d 显示当前的号数。

6)%m 显示当前的月份。

7)%Y 显示当前的年份。

8)%F 相当于%Y-%m-%d。

用法二: 用于设定时间。
1)date -s 设置当前时间,只有root用户才能设置,普通用户只能查看。
2)date -s 20210725 将时间设置为20210725,这样会将具体时间设置为空(00:00:00)。
3)date -s 01:01:01 设置具体时间,不会对日期做更改。
4)date -s “01:01:01 2021-07-25” 同时设置日期和具体时间。
5)date -s “01:01:01 20210725” 同时设置日期和具体时间。
6)date -s “2021-07-25 01:01:01” 同时设置日期和具体时间。
7)date -s “2021072501:01:01” 同时设置日期和具体时间。

用法三: 完成时间与时间戳之间的相互转换。
1)date +%s 显示当前时间的时间戳。

小贴士: 时间戳是当前时间与计算机起始时间的差值,单位为秒。

2)date -d @时间戳 将时间戳转换为时间。

cal指令

cal指令可以用于显示公历(阳历)日历。

语法: cal 选项 月份 年份
功能: 用于查看日历等时间信息,如只有一个参数,则表示年份(1~9999),如有两个参数,则表示月份和年份。

常用选项:
1)-3 显示系统前一个月、当前月以及下一个月的日历。

2)-j 显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)。

3)-y 显示当前年份的日历。

find指令

语法: find 路径 选项 …
功能: 用于在文件树中查找文件,并作出相应的处理(可能访问磁盘->效率比较低)。

常用选项:
1)-name 按照文件名查找文件。

2)-size 按照文件大小查找文件。

which指令

Linux当中的每个指令其实都是用计算机语言编写出的可执行程序,这些程序都存储在文件当中,我们可以通过which指令查看某一指令的程序文件所在路径。

语法: which 指令
功能: 用于查找某一指令的程序文件所在路径。

当我们执行某一指令时,实际是调用其可执行程序,因此我们还可以通过其程序文件的所在路径进行调用该指令。

alias指令

当你觉得某一指令太长时,你可以使用alias指令给它起一个别名。

语法: alias 别名=‘原名’
功能: 可以用于给指令取别名。

grep指令

grep指令类似于关键词搜索(行过滤器)。

语法: grep 选项 搜寻字符串 文件
功能: 在文件中搜索字符串,将找到的行打印出来。

常用选项:
1)-i 忽略大小写进行查找。

2)-n 输出行号。

3)-v 反向选择,显示出没有待搜索字符串的行。

su指令 

su命令用于变更为其他使用者的身份,除 root 外,需要键入该使用者的密码。

语法: su 用户名
功能: 可以用于切换用户身份

普通用户切换为root用户

root用户切换为普通用户

如何添加与删除用户?

当我们购买了云服务器后,我们得到的是一个root账号。

实际上,使用root账号是比较危险的,因为root账号的权限太大,为了避免自己对某些系统文件进行误操作,我们最好创建一个普通用户的账号使用。

如何添加一个普通用户账号?

第一步: 输入adduser yourid(yourid是待创建的用户的用户名)。

第二步: 输入passwd yourid进行设置密码。

注意: Linux当中输入密码时,密码不回显。

第三步: 再次输入密码进行确认。

当看到以下提示时,说明用户创建成功。

这时我们可以在/home目录下看到该用户的用户名。

如何删除用户账号?

删除账号时之间输入userdel -r yourid(yourid是要删除的用户的用户名)。

此时我们在/home目录下便看不到该用户的用户名了。

zip/unzip指令

zip指令用于打包压缩目录或文件。

语法: zip 选项 压缩文件.zip 待打包目录或文件
功能: 将目录或文件打包压缩成zip格式。
常用选项:
1)-r 递归处理,将指定目录下的所有文件和子目录一并处理。

unzip指令用于解压文件。

语法: unzip 压缩文件.zip 选项 目录
功能: 将压缩文件解压到指定目录当中。

注意: 解压文件时若不带-d选项和目标目录,则默认解压到当前目录下。

tar指令

tar指令也可以用来打包压缩和解压文件,并且还可以实现不解开压缩包,直接查看里面内容的操作,以及只打包不压缩等操作。

语法: tar 选项 压缩文件 …
功能: 打包/解包,不解开压缩包,直接查看里面内容。

常用选项:
1)-c 建立一个压缩文件的参数指令(create的意思)。
2)-x 解开一个压缩文件的参数指令。
3)-t 查看tarfile里面的文件。
4)-z 是否同时具有gzip属性?即是否需要用gzip压缩?
5)-j 是否同时具有bzip2属性?即是否需要用bzip2压缩?
6)-v 压缩的过程中显示文件(常用)。
7)-f 使用档名,请留意,在f之后要立即接档名,不要再加参数。
8)-C 解压到指定目录。

打包示例:

解包示例:

不解开压缩包,直接查看里面内容:

file指令

语法: file
功能: 查看文件的更多属性信息。

bc指令

Windows里面有计算器,Linux下面也有,bc指令就是Linux下的计算器。

语法: bc
功能: 进行运算。

uname指令

语法: uname 选项
功能: 用于获取电脑和操作系统的相关信息。
常用选项:
1)-r 输出电脑和操作系统相关信息。

2)-a 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称。

几个重要的热键

1)上下按键。上下按键在Linux当中存储的是历史命令,通过按上下键我们可以查看我们最近敲的命令。
我们也可以使用history指令查看历史命令。

2)Ctrl+D。退出当前命令行。
3)Ctrl+C。让当前程序停掉(终止失控程序)。
4)Tab。自动补齐功能。

5)Ctrl+R。搜索历史命令。

关机指令

语法: shutdown 选项
常见选项:
1)-h 将系统的服务停掉后,立即关机。
2)-r 将系统的服务停掉之后就重新启动。
3)-t sec 经过sec秒后关机。
注: 所有关机指令只能由root用户执行。

指令拓展

1)安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last。
2)文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln。
3)系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab。
4)网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、nslookup。
5)系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who。
6)其他命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1672666.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java Web开篇

Java Web开篇 大纲 整个内容梳理 具体案例 整个内容梳理 这是前端和后端组成的系统的框架结构

自动攻丝机进出料激光检测 进料出料失败报警循环手动及关闭报警退出无限循环

/**************进料检测********************/ /***缺料无限次循环 手动退出 超时报警*******/ void check_Pon() // { zstatus0; //报警计数器归零 Signauto1; …

使用Pyramid、Mako和PyJade生成 HTML

Pyramid 是一个流行的 Python Web 框架,而 Mako 和 PyJade 是用于模板引擎的工具,它们可以与 Pyramid 配合使用来生成 HTML 内容。但是在实际使用中还是有些差别的,尤其会遇到各种各样的问题,下面我将利用我所学的知识一一为大家解…

Python | Leetcode Python题解之第87题扰乱字符串

题目: 题解: class Solution:def isScramble(self, s1: str, s2: str) -> bool:cachedef dfs(i1: int, i2: int, length: int) -> bool:"""第一个字符串从 i1 开始,第二个字符串从 i2 开始,子串的长度为 le…

MyBatis——MyBatis 参数处理

一、单个简单类型参数 简单类型包括: byte short int long float double char Byte Short Integer Long Float Double Character String java.util.Date java.sql.Date parameterType 属性:告诉 MyBatis 参数的类型 MyBatis 自带类型自动推断机制…

部署Discuz论坛项目

DIscuz 是由 PHP 语言开发的一款开源社交论坛项目。运行在典型的LNMP/LAMP 环境中。 安装MySQL数据库5.7 主机名IP地址操作系统硬件配置discuz-db192.168.226.128CentOS 7-mini-20092 Core/4G Memory 修改主机名用来自己识别 hostnamectl set-hostname discuz-db #重连远程…

虚拟资源在线交易服务平台源码 线上虚拟商品交易平台搭建

在信息爆炸的时代,虚拟资源、素材、源码系统等等以其独特的魅力,逐渐成为人们日常生活和工作中不可或缺的一部分。如何高效地获取、管理和交易这些虚拟资源,分享一款虚拟资源在线交易服务平台源码,轻松搭建线上虚拟商品交易平台&a…

【全开源】智慧小区物业管理小程序基于FastAdmin+UniApp

基于FastAdminUniApp开发的智慧小区物业管理小程序,包含小区物业缴费、房产管理、在线报修、业主活动报名、在线商城等功能。为物业量身打造的智慧小区运营管理系统,贴合物业工作场景,轻松提高物业费用收缴率,更有功能模块个性化组…

HTML静态网页成品作业(HTML+CSS+JS)——华为商城网页(1个页面)

🎉不定期分享源码,关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 🏷️本套采用HTMLCSS,使用Javacsript代码实现首页图片切换轮播效果,共有1个页面…

【网络安全产品互联互通 告警信息资产信息】相关思维导图

近日,在某客户安全建设项目中,涉及安全告警事件的梳理上报。在整理及学习中发现最近(以19年等保2.0为参考分隔“最近”)发布的可参考标准,因此做了思维导图的整理。 PS:标准中存在引用的情况,过…

OpenHarmony NAPI 使用Cmake 编译C++ .so 并ets调用

一、前言 这两年多随着国产化兴起,国内越来越多的项目都要求支持国产化系统,并且随着OpenHarmony 开源,更多的人都想分一杯羹。因此,我们公司也要求,所有产品的都需要支持开源鸿蒙OpenHarmony。 对于我们这边的设备&am…

Mybatis进阶详细用法

目录 条件构造器 案例 自定义SQL 案例 Service接口 案例 综合案例 条件构造器 案例 Testvoid testQueryMapper() {// 创建 QueryWrapper 实例QueryWrapper<User> queryWrapper new QueryWrapper<>();queryWrapper.select("id," "username,&…

uniapp小程序:大盒子包裹小盒子但是都有点击事件该如何区分?

在开发过程中我们会遇到这种情况&#xff0c;一个大盒子中包裹这一个小盒子&#xff0c;两个盒子都有点击事件&#xff0c;例如&#xff1a; 这个时候如果点击评价有可能会点击到它所在的大盒子&#xff0c;如果使用css中的z-index设置层级的话如果页面的盒子多的话会混乱&…

基于微信小程序+JAVA Springboot 实现的【停车场小程序】app+后台管理系统 (内附设计LW + PPT+ 源码+ 演示视频 下载)

项目名称 项目名称&#xff1a; 停车场微信小程序的设计与实现 在当前信息技术飞速发展的背景下&#xff0c;停车场微信小程序的开发成为了一个创新的解决方案&#xff0c;旨在提高停车场管理的效率和用户的停车体验。本项目通过深入分析现有停车场管理系统的不足&#xff0c…

使用Apache Spark从MySQL到Kafka再到HDFS的数据转移

使用Apache Spark从MySQL到Kafka再到HDFS的数据转移 在本文中&#xff0c;将介绍如何构建一个实时数据pipeline&#xff0c;从MySQL数据库读取数据&#xff0c;通过Kafka传输数据&#xff0c;最终将数据存储到HDFS中。我们将使用Apache Spark的结构化流处理和流处理功能&#…

[Linux][网络][高级IO][一][五种IO模型][同步通信][异步通信][非阻塞IO]详细讲解

目录 0.预备知识 && 思考问题1.五种IO模型0.形象理解五种模型1.阻塞IO2.非阻塞IO3.信号驱动IO4.多路转接/多路复用5.异步IO 2.高级IO重要概念1.同步通信 vs 异步通信2.阻塞 vs 非阻塞 3.非阻塞IO1.fcntl()2.实现SetNonBlock 0.预备知识 && 思考问题 网络通信本…

华为认证存储HCIE有用吗?

首先&#xff0c;对于个人来说&#xff0c;获得华为存储认证可以证明其具备信息存储技术的专业能力 1.专业认可&#xff1a;获得华为存储认证&#xff0c;尤其是HCIE-Storage级别的证书&#xff0c;意味着持有者对信息存储技术有着全面深入的理解&#xff0c;能够设计、部署、…

不同品牌的SSL证书价格差异大吗?

在数字化时代&#xff0c;网络安全的重要性日益凸显&#xff0c;SSL证书作为保护网站和用户数据安全的重要工具&#xff0c;其价值不言而喻。SSL证书通过加密技术保障网站与用户之间的通信安全&#xff0c;防止敏感信息的泄露和篡改。对于网站运营者而言&#xff0c;了解SSL证书…

LearnOpenGL(十三)之网格

一、网格 组合模型的每个单独的形状就叫做一个网格(Mesh)。比如说有一个人形的角色&#xff1a;艺术家通常会将头部、四肢、衣服、武器建模为分开的组件&#xff0c;并将这些网格组合而成的结果表现为最终的模型。一个网格是我们在OpenGL中绘制物体所需的最小单位&#xff08;…

Android Compose 三:切换主题

1 先瞅瞅lightColorScheme / darkColorScheme 创建项目后 自带一个Theme.kt 判断了 使用哪个ColorScheme 下面看看LightColorScheme &#xff08;亮/暗主题差不多&#xff0c;就是颜色不一样罢了&#xff09; private val LightColorScheme lightColorScheme(primary Pur…