大数据讲课笔记1.2 Linux用户操作

文章目录

  • 零、学习目标
  • 一、导入新课
  • 二、新课讲解
    • (一)用户账号管理
      • 1、用户与用户组文件
      • 2、用户账号管理工作
    • (二)用户操作
      • 1、切换用户
        • (1)语法格式
        • (2)切换到普通用户
        • (3)切换到root用户
        • (4)查看环境变量
      • 2、查看用户
        • (1)查看全部用户
        • (2)系统内置用户与新增用户
        • (3)查看不能登录的伪用户
        • (4)查看指定某个用户信息
      • 3、添加用户
        • (1)语法格式
        • (2)选项说明
        • (3)注意事项
        • (4)案例演示
          • 任务:创建用户mike
      • 4、修改用户
        • (1)语法格式
        • (2)选项说明
        • (3)案例演示
          • 任务:修改用户mike
      • 5、删除用户
        • (1)语法格式
        • (2)选项说明
        • (3)案例演示
          • 任务:强制彻底删除用户mike
    • (三)用户组操作
      • 1、增删改用户组
      • 2、用户组里增删改用户
      • 3、简单说明
      • 4、案例演示
        • 任务1、创建用户组并添加用户
        • 任务2、建一个新用户组,用户实现组迁移
        • 任务3:创建新用户,同时加入两个组
        • 任务4、已有用户同时加入另一个组
        • 任务5、从组里移除用户
        • 任务6、删除用户组
  • 三、归纳总结
  • 四、上机操作
  • 补充:Linux命令结构
    • (一)只有命令动词的情况
    • (二)只有命令动词和选项参数的情况
    • (三)只有命令动词和操作对象的情况
    • (四)包含命令动词、选项参数和操作对象的情况

零、学习目标

  1. 用户账号管理
  2. Linux用户操作
  3. Linux用户组操作

一、导入新课

  • 在Linux系统中,用户和用户组管理是非常重要的。作为一个多用户操作系统,Linux需要对不同用户的访问权限进行控制和管理,以确保系统的安全性和稳定性。通过本次课程的学习,我们将了解如何创建、删除、修改用户账号,以及如何管理和配置用户组。这些操作不仅可以帮助我们更好地管理我们的Linux系统,还可以提高我们的工作效率和安全性。因此,学习用户与用户组操作是每一个Linux用户必备的技能之一。

二、新课讲解

  • 在Linux系统中,用户账号管理是十分重要的。它包括了用户与用户组文件的了解和管理工作,以及用户的增删改查操作等。首先,我们需要了解用户与用户组文件的信息,例如账户信息文件、账户密码信息、用户组信息文件和用户组密码信息。然后,我们可以进行用户账号管理工作,包括用户操作和用户组操作。用户操作包括添加用户、查看用户、切换用户、修改用户和删除用户等;而用户组操作则包括增删改用户组和用户组里增删改用户等。通过学习这些内容,我们可以更好地管理和维护Linux系统的用户账号,提高工作效率和安全性。
    在这里插入图片描述

(一)用户账号管理

  • Linux系统中,用户身份与用户组的概念对于多任务环境的管理至关重要。用户信息和密码信息分别保存在/etc/passwd/etc/shadow文件中,而用户组信息和密码信息则分别保存在/etc/group/etc/gshadow文件中。通过学习如何进行用户账号管理工作,包括增删改用户、更改用户所属用户组、管理用户的口令以及增删改用户组等操作,可以更好地理解和掌握Linux系统的用户管理功能。
    在这里插入图片描述

1、用户与用户组文件

  • 在Linux系统当中,默认情况下所有用户信息保存在/etc/passwd文件内(包括root用户),用户密码信息保存在/etc/shadow文件内;所有用户组信息保存在/etc/group文件内,用户组密码信息保存在/etc/gshadow文件内。这四个文件非常重要,不要轻易做变动。
文件作用
/etc/passwd用户帐户信息
/etc/shadow帐户密码信息
/etc/group组帐户信息
/etc/gshadow组密码信息
/etc/login.defs设置用户帐号限制的文件,但配置对root用户无效

2、用户账号管理工作

  • 增、删、改用户:在Linux系统中,可以通过命令行工具来添加、删除或修改用户账号。例如,可以使用useradd命令来创建一个新的用户账号,使用userdel命令来删除一个用户账号,以及使用usermod命令来修改一个用户账号的属性。
  • 更改用户所属用户组:在Linux系统中,每个用户都属于一个或多个用户组。用户可以通过命令行工具来更改自己的所属用户组。例如,可以使用usermod命令来将一个用户添加到某个用户组,或者从某个用户组中移除。
  • 管理用户的口令:在Linux系统中,每个用户都有一个口令,用于验证其身份。管理员可以通过命令行工具来管理用户的口令。例如,可以使用passwd命令来设置或更改用户的口令。
  • 增、删、改用户组:在Linux系统中,可以通过命令行工具来创建、删除或修改用户组。例如,可以使用groupadd命令来创建一个新的用户组,使用groupdel命令来删除一个用户组,以及使用groupmod命令来修改一个用户组的属性。

(二)用户操作

  • 在Linux系统中,用户管理是非常重要的一个方面。通过了解和掌握用户操作的相关知识,可以更好地管理和维护Linux系统的用户账号,提高工作效率和安全性。本节将介绍如何切换用户、查看用户信息、添加用户、修改用户以及删除用户等操作,帮助读者熟悉Linux系统中的用户管理功能。
  • 以root用户登录虚拟机
    在这里插入图片描述

1、切换用户

  • 由root用户切换到普通用户,无须输入密码,但是由普通用户切换到root用户或其它用户,就需要输入密码。
(1)语法格式
  • su <用户名>
(2)切换到普通用户
  • 我们在安装CentOS时,创建普通用户 - howard
  • 执行命令:su howard,切换到howard普通用户
    在这里插入图片描述
  • 现在就是howard普通用户操作环境了,提示符由#变成$符号
(3)切换到root用户
  • 现在有两种方式切换到root用户,一个是执行exit命令,一个是执行su root
  • 执行命令:su root,需要输入密码
    在这里插入图片描述
  • 现在的情况是root ⟹ \Longrightarrow howard ⟹ \Longrightarrow root,因此我们可以执行两次exit命令,返回到最开始的root用户环境。
    在这里插入图片描述
(4)查看环境变量
  • 执行命令:env,查看环境变量
    在这里插入图片描述

  • 切换到howard普通用户,再查看环境变量
    在这里插入图片描述

  • 退出howard用户
    在这里插入图片描述

2、查看用户

(1)查看全部用户
  • 执行命令:cat /etc/passwd
    在这里插入图片描述
  • /etc/passwd文件是Linux中的重要系统文件之一,主要作用是存储系统用户的信息。文件中的每一行表示一个用户信息,有多少行就表示多少个用户信息。仔细观察其中的一行,可以清晰地看出,各内容之间通过“:”号划分成了多个字段,共7部分,这7部分分别定义了用户的不同属性。
  • 以passwd文件中howard一行为例介绍各个字段作用
howard:x:1000:1000:howard:/home/howard:/bin/bash
用户名称:用户密码:用户UID:用户组GID:用户说明:用户家目录:shell解释器
(2)系统内置用户与新增用户
  • 用户id在1000以前的都是系统内置用户,包括不能登录的伪用户(/sbin/nologin)。

  • root用户的用户id是0,bin用户的用户id是1,daemon用户的用户id是2……

  • 执行命令:cat /etc/passwd | head -3
    在这里插入图片描述

  • 说明:|是管道命令,加上head -3,表示显示前3条记录

  • 新增用户的id必然大于或等于1000

  • howard用户的用户id是1000,不是系统内置用户,而是新增用户
    在这里插入图片描述

  • 说明:|是管道命令,加上tail -3,表示显示末尾3条记录

(3)查看不能登录的伪用户
  • 执行命令:cat /etc/passwd | grep nologin
    在这里插入图片描述
  • |是 管道命令,grep是抓取命令 (可使用通配符*),合在一起就是抓取前一个命令的结果中满足条件的信息。
    在这里插入图片描述
(4)查看指定某个用户信息
  • 执行命令:cat /etc/passwd | grep howard
    在这里插入图片描述

3、添加用户

(1)语法格式
  • useradd [选项] 用户名
(2)选项说明
参数说明
-g主组(group)
-G附加组(Group)
-d主目录(directory)
-s指定用户登录后使用的shell,默认值是/bin/bash
-c注释(comment)
-u用户ID(user)
-p密码(password)

在这里插入图片描述

(3)注意事项
  • 添加用户,不设置主组,会默认创建同名的主组。
  • 增加用户账号就是在/etc/passwd文件中为新用户增加一条记录,同时更新其他系统文件/etc/shadow/etc/group等。
(4)案例演示
任务:创建用户mike
  • 创建用户mike,主目录为/home/mike,用户id为1010,密码为12345,注释my workmate

  • 执行命令:useradd -d /home/mike -u 1010 -p 12345 -c 'my workmate' mike
    在这里插入图片描述

  • 在四个文件中查看刚才创建的新用户信息
    在这里插入图片描述

  • 查看mike用户的主目录
    在这里插入图片描述

4、修改用户

  • 创建用户帐户后,在一些需要更改现有用户属性的场景中,例如更改用户的主目录、登录名、登录shell、密码到期日期等,在这种情况下使用usermod命令。
(1)语法格式
  • usermod [选项] 用户名
  • 说明:mod是单词modify的前三个字母
(2)选项说明
参数说明
-a–append ##把用户追加到某些组中,仅与-G选项一起使用
-c–comment ##修改/etc/passwd文件第五段comment
-d–home ##修改用户的家目录通常和-m选项一起使用
-e–expiredate ##指定用户帐号禁用的日期,格式YY-MM-DD
-f–inactive ##用户密码过期多少天后采用就禁用该帐号,0表示密码已过期就禁用帐号,-1表示禁用此功能,默认值是-1
-g–gid ##修改用户的gid,改组一定存在
-G–groups ##把用户追加到某些组中,仅与-a选项一起使用
-l–login ##修改用户的登录名称
-L–lock ##锁定用户的密码
-m–move-home ##修改用户的家目录通常和-d选项一起使用
-s–shell ##修改用户的shell
-u–uid ##修改用户的uid,该uid必须唯一
-U–unlock ##解锁用户的密码
(3)案例演示
任务:修改用户mike
  • 修改用户mike,主目录改为/home/dear-mike,密码改为903213,注释改为my friend

  • 执行命令:usermod -m -d /home/dear-mike -p 903213 -c 'my friend' mike (注意一定要加-m,否则主目录名不会被修改)
    在这里插入图片描述

  • /etc/passwdetc/shadow文件里查看更改后的用户信息
    在这里插入图片描述

  • 可以看到,mike用户的主目录、注释和密码都被修改了。

  • 查看mike用户的主目录
    在这里插入图片描述

5、删除用户

(1)语法格式
  • userdel [选项] 用户名
  • 说明:del是单词delete的前三个字母
(2)选项说明
选项说明
-f(forcible) 强制删除用户,即使用户当前已登录
-r(recursive) 删除用户的同时,删除与用户相关的所有文件
(3)案例演示
任务:强制彻底删除用户mike
  • 执行命令:userdel -rf mike
    在这里插入图片描述

  • 查看是否还有mike用户
    在这里插入图片描述

  • 可以看到,四个文件里都没有mike的踪迹,该用户被彻底删除了。

  • 再次执行删除mike的命令,会提示用户“mike”不存在。
    在这里插入图片描述

  • 因为是彻底删除,mike用户的主目录也被删除掉了的,/home目录里没有dear-mike目录
    在这里插入图片描述

  • 为了后面操作需要,创建mike用户,执行命令:useradd -d /home/mike -u 1010 -p 903213 -c 'my friend' mike
    在这里插入图片描述

(三)用户组操作

  • 在Linux系统中,用户组管理是非常重要的一部分。通过学习用户组操作的相关知识,可以更好地管理和维护Linux系统的用户账号,提高工作效率和安全性。本节将介绍如何增删改用户组、用户组里增删改用户等操作,并通过案例演示来帮助读者熟悉Linux系统中的用户组管理功能。

1、增删改用户组

操作语法格式
添加用户组groupadd -g 用户组id 用户组名
修改用户组groupmod -g 用户组id 用户组名
删除用户组groupdel 用户组名

2、用户组里增删改用户

操作语法格式
用户组里添加用户useradd -G 用户组 用户名
用户组里修改用户usermod -G 用户组 用户名
usermod -a -G 用户组 用户名
用户组里删除用户gpasswd -d 用户名 用户组

3、简单说明

  • 每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux 系统对用户组的规定有所不同,如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。用户组的管理涉及用户组的添加、删除和修改,实际上就是对/etc/group文件的更新。

4、案例演示

  • 我们在安装CentOS时创建了一个普通用户howard(看看你当时创建的普通用户名),前面我们又利用命令创建了一个普通用户mike
    在这里插入图片描述
任务1、创建用户组并添加用户
  • 创建一个用户组lzy,组id是666
    在这里插入图片描述

  • 将已有用户mike添加到该用户组
    在这里插入图片描述

  • 添加用户alice,密码123456,主目录/home/alice,加入lzy
    在这里插入图片描述

  • 查看组lzy的情况,目前该组有两个用户:mike和alice
    在这里插入图片描述

  • 查看/home目录下的三个用户目录
    在这里插入图片描述

任务2、建一个新用户组,用户实现组迁移
  • 创建一个组luzhou,组编号777
    在这里插入图片描述
  • 将用户mikelzy组迁移到luzhou
    在这里插入图片描述
  • 查看两个用户组里的用户情况,用户alice在lzy用户组里,用户mike在luzhou用户组里
    在这里插入图片描述
任务3:创建新用户,同时加入两个组
  • 创建一个用户smith,密码111111,加入lzy组和luzhou
    在这里插入图片描述
  • 查看用户smith的情况,lzy与luzhou两个组里都有smith,正所谓脚踏两只船。
    在这里插入图片描述
  • 说明:用户smith属于一个主组smith,另外还属于两个附加组lzy和luzhou
  • 问题:为什么smith的用户id是1012
  • 回答:创建mike用户时,设置了用户id - 1010,然后创建alice时,没有设置用户id,那就自动编号1011,最后创建smith时,也没有设置用户id,那也是自动编号1012
    在这里插入图片描述
任务4、已有用户同时加入另一个组
  • lzy组的alice同时加入luzhou组,注意有两个选项参数:-a -G(说明:a - append)
    在这里插入图片描述
  • 查看alice用户的情况,在lzy与luzhou两个组里都有她的踪迹
    在这里插入图片描述
  • 说明:用户alice属于一个主组alice,另外还属于两个附加组lzy和luzhou
任务5、从组里移除用户
  • 让用户mikeluzhou组里移除,执行命令:gpasswd -d mike luzhou (说明:d - delete)
    在这里插入图片描述
  • 查看用户组luzhou,看还有没有mike用户
    在这里插入图片描述
  • 从组里删除一个不存在的用户
    在这里插入图片描述
任务6、删除用户组
  • 删除luzhou用户组,执行命令:groupdel luzhou
    在这里插入图片描述
  • 删除用户组luzhou,并不会连带删除里面的用户smithalice
    在这里插入图片描述
  • 为了后续章节的需要,再次创建luzhou用户组
    在这里插入图片描述

三、归纳总结

  • 回顾本节课所讲的内容,并通过提问的方式引导学生解答问题并给予指导。
  • Linux用户操作是管理Linux系统中用户账号的重要手段。在本节中,我们学习了如何增删改用户和用户组、如何查看用户信息以及如何切换用户等操作。这些知识可以帮助我们更好地管理和维护Linux系统的用户账号,提高工作效率和安全性。首先,我们介绍了用户与用户组文件的结构和内容,并了解了如何使用命令行工具来创建、删除和修改用户账号。接下来,我们通过案例演示了如何查看用户信息、如何切换用户以及如何更改用户所属用户组等操作。最后,我们还介绍了如何管理用户的口令和如何增删改用户组。通过本节的学习,我们可以更好地理解和掌握Linux系统的用户管理功能,为后续的学习和工作打下坚实的基础。

四、上机操作

  • 形式:单独完成
  • 题目:进行用户与用户组操作
  • 要求:按照讲课笔记完成用户和用户组操作中的给定任务,记录操作过程,发一篇CSDN博文

补充:Linux命令结构

  • 在Linux系统中,命令是用户与计算机进行交互的重要方式。本节我们将学习如何分析和使用Linux系统的命令结构。通过了解命令的构成和功能,我们可以更有效地使用Linux系统,提高工作效率。
  • 命令动词 + [选项参数] + 操作对象,按这个结构分析我们前面学习的Linux用户和用户组操作命令

(一)只有命令动词的情况

  • 查看当前目录详情,其实相当于执行命令:ll ..代表当前目录)
    在这里插入图片描述

(二)只有命令动词和选项参数的情况

  • 执行命令:ls -a(说明:a - all)
    在这里插入图片描述

(三)只有命令动词和操作对象的情况

  • 执行命令:ll /home,查看指定目录下的内容
    在这里插入图片描述

(四)包含命令动词、选项参数和操作对象的情况

  • 执行命令:ls -a /etc/sysconfig
    在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

什么是rocketmq❓

在大规模分布式系统中&#xff0c;各个服务之间的通信是至关重要的&#xff0c;而RocketMQ作为一款分布式消息中间件&#xff0c;为解决这一问题提供了强大的解决方案。本文将深入探讨RocketMQ的基本概念、用途&#xff0c;以及在实际分布式系统中的作用&#xff0c;并对Produc…

Kafka-客户端使用

理解Kafka正确使用方式 Kafka提供了两套客户端API&#xff0c;HighLevel API和LowLevel API。 HighLevel API封装了kafka的运行细节&#xff0c;使用起来比较简单&#xff0c;是企业开发过程中最常用的客户端API。 LowLevel API则需要客户端自己管理Kafka的运行细节&#xf…

车载以太网笔记

文章目录 以太网协议分层协议中间设备子网掩码物理层测试内容比较杂,后续会整理。 以太网协议分层 协议 中间设备

国产Apple Find My「查找」认证芯片-伦茨科技ST17H6x芯片

深圳市伦茨科技有限公司&#xff08;以下简称“伦茨科技”&#xff09;发布ST17H6x Soc平台。成为继Nordic之后全球第二家取得Apple Find My「查找」认证的芯片厂家&#xff0c;该平台提供可通过Apple Find My认证的Apple查找&#xff08;Find My&#xff09;功能集成解决方案。…

UG NX二次开发(C++)-库缺少需要的入口点的原因与解决方案

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1、前言2、“库缺少需要的入口点”错误展示3、可能出现的原因与解决方案3.1 对于采用CTRL+U方式调用3.2 对于menu菜单下调用1、前言 在UG NX二次开发过程中,有时会遇到形形色色的bug,比如有个读…

C++使用回调函数的两种方式

一.函数指针 #include <iostream>typedef void (*callback)(int ,int); class MyTest { public:void setCallback(callback cb){m_callback = cb;}void add(int a, int b){m_callback(a, b);}private:callback m_callback; };void onCallback(int a, int b) {std::cout …

python每日学11:xpath的使用与调试

背景&#xff1a;最近在使用selenium 模拟浏览器作一些常规操作&#xff0c;在使用selenium的过程中接触到的一种定位方法&#xff0c;叫xpath, 这里说一下使用心得。 首先&#xff0c;我觉得如果只是简单使用的话是不用详细了解具体的语法规则的。 一、xpath怎么用&#xff1…

牛客网BC107矩阵转置

答案&#xff1a; #include <stdio.h> int main() {int n0, m0,i0,j0,a0,b0;int arr1[10][10]{0},arr2[10][10]{0}; //第一个数组用来储存原矩阵&#xff0c;第二个数组用来储存转置矩阵scanf("%d%d",&n,&m); if((n>1&&n<10)&&am…

Vue 组件传参 emit

emit 属性&#xff1a;用于创建自定义事件&#xff0c;接收子组件传递过来的数据。 注意&#xff1a;如果自定义事件的名称&#xff0c;和原生事件的名称一样&#xff0c;那么只会触发自定义事件。 setup 语法糖写法请见&#xff1a;《Vue3 子传父 组件传参 defineEmits》 语…

OxLint 发布了,Eslint 何去何从?

由于最近的rust在前端领域的崛起&#xff0c;基于rust的前端生态链遭到rust底层重构&#xff0c;最近又爆出OxLint&#xff0c;是一款基于Rust的linter工具Oxlint在国外前端圈引起热烈讨论&#xff0c;很多大佬给出了高度评价&#xff1b;你或许不知道OxLint&#xff0c;相比ES…

设计模式——建造者模式(创建型)

引言 生成器模式是一种创建型设计模式&#xff0c; 使你能够分步骤创建复杂对象。 该模式允许你使用相同的创建代码生成不同类型和形式的对象。 问题 假设有这样一个复杂对象&#xff0c; 在对其进行构造时需要对诸多成员变量和嵌套对象进行繁复的初始化工作。 这些初始化代码…

《人工智能导论》知识思维导图梳理【第7章节】

文章目录 说明专家系统机器学习机器学习定义工作流程模型评估机器学习分类在这里插入图片描述 机器学习部分md内容机器学习1 机器学习定义机器学习是从数据中自动分析获得模型&#xff0c;并利用模型对未知数据进行预测机器学习&#xff08;machine learning&#xff09;使计算…

【Python】Flask + MQTT 实现消息订阅发布

目录 Flask MQTT 实现消息订阅发布准备开始1.创建Flask项目2创建py文件&#xff1a;mqtt_demo.py3.代码实现4.项目运行 测试1、测试消息接收2、 测试消息发布 扩展 Flask MQTT 实现消息订阅发布 准备 本次项目主要使用到的库&#xff1a;flask_mqtt pip install flask_mqt…

uniGUI for Delphi UniSweetAlert控件详解

UniSweetAlert是UniGUI后期版本新增的一个界面友好的消息提示和输入控件&#xff0c;是ShowMessageN的升级版&#xff0c;UniSweetAlert增加了更多的可控制属性。 属性介绍 1、AlertType&#xff1a;提示类型&#xff0c;分为atError、atSuccess、atInfo、atQuestion、atWarni…

计算机网络快速刷题

自用//奈奎斯特定理和香农定理计算题 参考博客&#xff1a;UDP协议是什么&#xff1f;作用是什么&#xff1f; 肝了&#xff0c;整理了8张图详解ARP原理 【网络协议详解】——FTP系统协议&#xff08;学习笔记&#xff09; 在OSI参考模型中&am…

RS®SMM100A 矢量信号发生器具备毫米波测试功能的中档矢量信号发生器

R&SSMM100A 矢量信号发生器 具备毫米波测试功能的中档矢量信号发生器 R&SSMM100A 矢量信号发生器在 100 kHz 至 44 GHz 的频率范围内提供优越的射频特性。这款仪器覆盖现有无线标准所使用的 6 GHz 以下的频段、新定义的最高 7.125 GHz 的 5G NR FR1 和 Wi-Fi 6E 频段以…

Nginx(四层+七层代理)+Tomcat实现负载均衡、动静分离

一、Tomcat多实例部署 具体步骤请看我之前的博客 写文章-CSDN创作中心https://mp.csdn.net/mp_blog/creation/editor/134956765?spm1001.2014.3001.9457 1.1 访问测试多实例的部署 1.2 分别在三个tomcat服务上部署jsp的动态页面 mkdir /usr/local/tomcat/webapps/test vim …

stable-diffusion-webui(AI绘画)项目实现,即遇到的问题

实现步骤&#xff1a; 为了使环境中的库版本不会乱&#xff0c;导致自己电脑原来一些项目无法运行最好使用虚拟环境 下载miniconda 在搜索中搜所miniconda找到 建立虚拟环境 conda create --name sdwebui python3.10.6 每次运行激活这个虚拟环境 conda activate sdwebui …

生产环境_Spark处理轨迹中跨越本初子午线的经度列

使用spark处理数据集&#xff0c;解决gis轨迹点在地图上跨本初子午线的问题&#xff0c;这个问题很复杂&#xff0c;先补充一版我写的 import org.apache.spark.{SparkConf, SparkContext} import org.apache.spark.sql.{Row, SparkSession} import org.apache.spark.sql.func…

抖音视频解析,无水印解析下载抖音视频

抖音视频解析&#xff0c;你是否经常遇到这样的情况&#xff0c;看到一些非常精彩的抖音视频&#xff0c;想要保存下来&#xff0c;但因为下载速度慢或者视频带有水印而感到困扰&#xff1f;那么&#xff0c;这款&#xff08;抖音无水印解析工具&#xff09;将是你的得力助手&a…