Linux操作系统 中的用户管理,也就是关于用户的相关的操作与理解

news2024/11/24 7:27:26

目录

  • 1 概念
  • 2 用户管理的类型
  • 3、模板目录
  • 4 查看历史命令
  • 5 相关文件
  • 6 创建用户useradd
  • 7 命令passwd 存储及shadow命令下的用户密码
  • 8 usermod命令(修改属性)
  • 9 密码设置
  • 10 删除命令userdel
  • 11 用户组的操作
  • 12 用户权限
  • 13 创建一个用户组,并且将这个用户组绑定到一个文件夹上
  • 14 创建一个用户,并且将这个用户绑定到一个组上
  • 15 一个用户可以在这个文件夹下新增文件和文件夹,但是不可以删除东西,这个如何实现

1 概念

用户账户:

每个可以进行登录的用户都需要拥有一个账户,
账户可以用来识别和验证用户的身份。
账户的创建和管理都由系统管理员来进行。

用户组:

用户组是用来管理用户权限的组合,
在Linux系统中,用户可以同时属于多个用户组。
每个文件和目录都有一个所有者和一个所属组,
这些属性可以决定用户能否读写文件或目录。

权限:
权限用于控制文件和目录的访问权限,
包括读、写、执行等操作。文件或目录的所有者、
所属组和其他人都有不同的权限。


文件和目录的所有权和访问权限:

Linux系统中,每个文件和目录都有一个所有者和一个所属组,
并且每个文件或目录都有不同的访问权限,
它们可以决定用户是否能够读写文件或目录。


添加用户:
添加用户需要使用adduser命令,新用户的信息会保存到系统文件中。


删除用户:
删除用户需要使用deluser命令,同时也要记得删除该用户的所有文件。


修改密码:
修改密码需要使用passwd命令,需要输入旧密码才能修改新密码。

2 用户管理的类型

1、超级管理员用户

超级管理员主要识别是否是root和#这两个必备的条件来确定当前状态下是否为管理员用户

超级管理员用户的权限的特点是可以使用所有系统及程序命令

在Linux操作系统中,UID是指用户ID(User ID),是Linux系统中用来标识用户的数字ID。

每个用户在Linux系统中都有一个唯一的UID,这个UID是系统内部用来识别不同用户的数字编号,系统管理员可以用这个UID来对不同用户进行管理和授权。

在Linux中,UID为0的用户是超级管理员(也就是root用户),其余用户通常是从1000开始分配的非特权用户。当一个用户创建了一个文件或目录时,该文件或目录的所有者UID就会设置为该用户的UID。

UID也用于系统安全性方面的考虑,因为只有UID为0的超级管理员才能进行关键系统操作,其他用户只能按照分配给他们的权限执行相应的操作。因此,使用UID和权限机制可以保证系统的安全性和稳定性。
2、普通用户

普通用户主要是以#标识来参考当前状态下是否为普通用户,与超级管理员不同的是普通用户只可以使用有限的系统命令和具有使用权限的程序命令。

在Linux系统中,UID从0到999是保留给系统内部特定用户(例如,root用户)和特殊组的,因此,普通用户的UID通常从1000开始。在大多数Linux发行版中,普通用户的UID编号范围通常是1000到65535。
ls/131186633

3、程序用户

程序用户是比较特殊的一种用户、程序用户可以运行指令但不允许登录系统和创建家目录

UID编号范围也与普通用户和超级管理员用户大不相同,程序用户的UID编号范围通常是1到999。

3、模板目录

在Linux系统中,模板目录指的是包含一些常用文件模板的目录,这些模板可以帮助用户快速创建新的文件,并且每个模板都包含了常用的文件结构和格式。Linux系统中的模板目录通常位于用户的主目录下,路径为~/Templates。

模板目录中通常包含了一些预设的文件模板,例如:

空白文本文件模板
空白RTF文件模板
空白ODT文件模板
Shell脚本模板
C程序模板
Python程序模板
LibreOffice Calc电子表格模板
LibreOffice Impress演示文稿模板
用户可以在模板目录中添加或删除自己的文件模板,以满足不同的需求。例如,如果你是一名开发人员,可以在模板目录中添加一个包含了常用文件头注释和函数结构的C程序模板,这样就可以更快地创建一个新的C程序文件并进行编写。

模板目录的主要特点是当用户新建并创建家目录时,复制该目录下的所有内容

主要作用是定义用户登录终端时的显示样式及环境变量设置。

输入该命令~/.bashrc可在模板模式下定义显示样式。

模板目录下的家目录显示异常一般分为两种情况:第一种是用户在使用过程中误删家目录,第二种是在操作家目录迁移过程中出现的异常

模板模式下家目录异常的解决办法:把/etc/skel/的内容移动到/opt(mv /etc/skel/* /opt)

创建用户user03,显示结果异常 -bash-4.2$ 修复 使用user03用户按此路径输入cp /opt/.bashrc /home/user03 输入后再输入exit退出,退出后在输入su - user03进行验证,直至异常结果的不显示-bash-4.2$为结束。

4 查看历史命令

**history命令:**该命令可以列出当前用户在当前终端窗口下所执行的所有命令历史记录。可以使用该命令加上一个数字参数来指定显示最近多少条历史记录,例如,history 10将只显示最近的10条历史记录,默认保留1000条

Ctrl + R快捷键:在命令行下,按下Ctrl + R组合键,将会进入反向搜索模式,可以查找并执行之前执行过的命令。

**!!命令:**该命令可以执行上一条历史命令,即"!"字符后不加参数的形式。例如,执行sudo apt-get update命令之后,可以直接执行sudo !!来再次执行该命令。

**!n命令:**该命令可以执行历史记录中的第n条命令,其中n为命令的序号。例如,执行history命令查看历史记录,然后操作第10条历史命令,可以使用!10来执行。

5 相关文件

/etc/passwd 存储用户信息
在这里插入图片描述

在这个例子中,`root:x:0:0:root:/root:/bin/bash` 是一个用户记录,由冒号分隔的多个字段组成。下面是每个字段的含义:

1. `root`:这是用户名,表示该用户的登录名为 "root""root"Linux 系统中的超级用户,具有最高权限。

2. `x`:这个字段通常用于存储加密后的密码。在这种情况下,密码被加密并存储在其他文件中,而不是 `/etc/passwd` 文件中。

3. `0`:这是用户 IDUID),表示该用户的唯一标识符。在 Linux 系统中,0 是保留给超级用户 "root"UID4. `0`:这是组 IDGID),表示该用户所属的主要组的唯一标识符。在这里,GID 0 表示该用户的主要组也是 "root" 组。

5. `root`:这是用户的全名或描述,用于描述该用户的身份。

6. `/root`:这是用户的主目录路径,表示 "root" 用户的主目录位于 `/root` 目录下。

7. `/bin/bash`:这是用户的登录 shell,表示用户登录后默认使用的命令行解释器为 BashBourne Again SHell)。

这个用户记录提供了关于 "root" 用户的基本信息,包括用户名、UIDGID、用户描述、主目录路径和登录 shell 路径。

/etc/shadow 存储用户密码信息

在这里插入图片描述

根据提供的信息,这是一个关于 "root" 用户的密码记录。字段之间使用冒号分隔,具体含义如下:

1. `root`:这是用户名,表示该用户的登录名为 "root"2. `$6$IZWx9/g02HOmFM.$Bh1tfeYFQEGpsAY9R0ISjBs5QeTGtdBDj6IAqes3yEGBmWDrXzFyTwSK0EhDV/tefOvQhK9v7WJ7uXoZblgHZ/`:这是加密后的密码字符串。以 `$6$` 开头表示使用 SHA-512 算法进行加密。后面的字符串是密码的盐和哈希值。

3. `19670`:这是用户的上次密码更改日期,表示从 197011 日以来的天数。

4. `0`:这是密码更改的最小间隔天数。在这种情况下,密码可以立即更改。

5. `99999`:这是密码有效期的最大天数。在这里,密码没有过期限制。

6. `7`:这是密码到期前的警告天数。在这种情况下,系统会在密码到期前 7 天提醒用户更改密码。

其他字段为空,表示没有设置其他限制或配置。

请注意,这里提供的密码字符串已经经过加密处理,无法直接还原为明文密码。该密码记录中的密码信息被存储在系统的密码文件(通常是 `/etc/shadow`)中,以保护用户的安全。

/etc/group 存储组信息

在这里插入图片描述
这是关于 “root” 用户在 /etc/group 文件中的记录。字段之间使用冒号分隔,具体含义如下:

  1. root:这是组名,表示该用户所属的组名为 “root”。

  2. x:这是密码字段。通常情况下,密码字段在 /etc/group 文件中是以 “x” 表示,而实际的密码哈希值则存储在 /etc/gshadow 文件中。

  3. 0:这是组标识号(GID)。GID 0 是系统中预留给超级用户组(root)的特殊标识。

其他字段为空,表示没有设置其他限制或配置。

需要注意的是,这里提供的密码字段是以 “x” 表示,实际的密码哈希值存储在 /etc/gshadow 文件中,以保护用户组的安全。

6 创建用户useradd

在Linux中,useradd命令用于创建新的用户账户。该命令的语法如下:

useradd [option] username
其中,option为可选参数,username表示要创建的新用户的用户名。

下面是一些常用的useradd命令选项:

-c:设置用户账户的描述信息。
-d:设置用户的主目录,默认情况下,新用户的主目录会被创建在/home目录下,其名称与用户的用户名相同。
-s:设置用户登录后所采用的默认shell。
-m:自动创建用户主目录。
-g:指定用户的主组group(GID)。
-G:指定用户所属的其他组。
-e:设置账户的过期时间。
-d:指定用户的家目录
-f:密码过期后,账户被彻底禁用之前的天数0表示立即禁用,-1 表示禁用这个功能。
-N:不创建同名的组
-p:加密后的新账户密码
-u:新账户的用户ID
例如,要创建一个名为"john"的新用户,可以执行以下命令:

useradd john
默认情况下,这个新用户不属于任何组,并且没有登录密码。可以使用passwd命令为该用户设置密码,使用usermod命令来修改用户所属的组和其他属性,使用userdel命令来删除该用户。

7 命令passwd 存储及shadow命令下的用户密码

1、根目录下的passwd是存储用户信息

2、在根目录下输入tail -1 /etc/passwd命令,输入后显示以下内容

 user10:x:1014:1014::/home/user10:/bin/bash(该显示为存储用户的信息)

 显示内容为:用户名:密码占位符:用户ID:组ID:用户描述信息:用户家目录:登录shell

3、根目录下的shadow是存储用户密码信息

  在根目录下输入tail -1 /etc/shadow命令,输入后显示以下内容

  user2:!!:19522:0:99999:7:::(该显示为储存用户的密码信息)

  显示内容为:用户名:密码:用户创建时间:密码最短使用期限:密码最长使用期限:密码过期提醒时

                        间:密码过期后的宽容时间:密码过期时间:没用

8 usermod命令(修改属性)

usermod命令(修改属性)
1、usermod

usermod 是一个 Linux 命令,用于修改用户账户信息。它可以用于修改用户的用户名、主目录、用户组等等。一般来说,只有系统管理员才有权利使用这个命令。

使用 usermod 命令需要指定要修改的用户名以及要修改的选项。例如,以下是修改用户密码的命令:

sudo usermod -p PASSWORD USERNAME
其中,PASSWORD是新密码的加密后字符串(可以使用 openssl 生成),USERNAME是要修改密码的用户名。

注意,修改用户账户信息是一项敏感操作,务必小心操作,确保正确性。

-d,–home-dir
修改用户的家目录
usermod -d /path username
-e, --expiredate
修改用户的失效时间
usermod-e YYYY-MM-DD username
-f, --inactive
密码过期后,账户被彻底禁用之前的天数。0表示立即禁用,-1 表示禁用这个功能。
usermod -f n (n为数字) username
-g, --gid
用户初始登录组(基本组)的组名或GID。组名必须已经存在。组号码必须指代已经存在的组。
usermod -g GID username
-G, --groups
修改用户的附加组,该组必须已经存在
usermod -G GID username
-L, --lock
锁定用户密码,账户不能登录系统
usermod -L username
-m, --move-home
与-d选项配合,将老的家目录内容移动到-d指定的新家目录
usermod -m -d /newdirpath username
-p, --password PASSWORD
修改账户密码
usermod -p 加密后的密码 username
-s, --shell SHELL
修改账户的登录 shell
usermod-s shell的路径 username
-u, --uid UID
修改账户的用户 ID
usermod -u 指定的ID号 username

9 密码设置

Linux中密码设置有两种:passwd和chpasswd

1、passwd

用于单个密码设置,输入以下命令和步骤可解除密码锁定

-U, --unlock 解除密码锁定 usermod -U username

主要语法 passwd [选项] username

主要选项有以下几种

-l, --lock
锁定用户密码,账户不能登录系统
passwd -l username

--stdin
读取标准输入的内容作为密码
passwd --stdin  username

-u, --unlock
解除密码锁定
passwd -u username
-d, --delete
删除用户密码
passwd -d username
-e, --expire
设置密码有效期
passwd -e YYYY-MM-DD username
-S, --status
查看给定账户的密码状态(锁定或不锁定)
passwd -S username
非交互式修改密码的步骤:echo a | passwd --stdin user1

2、chpasswd

主要是批量用户设置密码

主要语法

生成用户与密码的对应关系
username:password
echo -e “username1:password1\nusername2:password2” [> filename]

echo -e “username1:password1\nusername2:password2” | chpasswd

chpasswd < filename < 重定向输入

cat filename | chpasswd

10 删除命令userdel

主要语法是:userdel [选项] username

选项只有一种:-r, --remove
用户主目录中的文件将随用户主目录和用户邮箱一起删除。在其它文件系统中的文件必须手动搜索并删除。
userdel -r username

案例流程如下:

现有用户user2 useradd user2

查看/home中的user2文件的属性
drwx------ 5 user2 user2 128 6月 14 11:36 user2

删除user2用户 userdel user2

查看/home中的user2文件的属性
drwx------ 5 1002 1002 128 6月 14 11:36 user2

新建用户user3 useradd user3

查看/home中的user2文件的属性

drwx------ 5 user3 user3 128 6月 14 11:36 user2
drwx------ 3 user3 user3 78 6月 14 11:50 user3

再次创建user2用户 useradd user2

查看/home中的user2文件的属性
drwx------ 5 user3 user3 128 6月 14 11:36 user2
drwx------ 3 user3 user3 78 6月 14 11:50 user3

切换到user2用户 su - user2

发现家目录异常
su: 警告:无法更改到 /home/user2 目录: 权限不够
-bash: /home/user2/.bash_profile: 权限不够
-bash-4.2$

11 用户组的操作

在Linux系统中,您可以使用各种命令来进行用户组的操作。以下是一些常用的用户组管理命令:

  1. groupadd:用于创建新的用户组。例如,要创建名为"mygroup"的用户组,可以执行以下命令:
sudo groupadd mygroup
  1. groupdel:用于删除现有的用户组。例如,要删除名为"mygroup"的用户组,可以执行以下命令:
sudo groupdel mygroup
  1. groupmod:用于修改用户组的属性,如名称或GID(组标识号)。例如,要将名为"mygroup"的用户组的名称修改为"newgroup",可以执行以下命令:
sudo groupmod -n newgroup mygroup
  1. usermod:用于修改用户的属性,包括所属用户组。例如,要将用户名为"myuser"的用户的所属用户组修改为"mygroup",可以执行以下命令:
sudo usermod -g mygroup myuser
  1. gpasswd:用于管理用户组的密码(或称为组密码)。可以使用gpasswd命令设置组密码、添加/删除组成员等。例如,要为名为"mygroup"的用户组设置密码,可以执行以下命令:
sudo gpasswd mygroup

这些命令需要使用超级用户(root)或具有适当权限的用户来执行。您可以使用sudo命令来获取超级用户权限。请注意,在执行这些命令时要小心,以免意外删除或修改重要的用户组或用户信息。

12 用户权限

在Linux中,一个文件夹(目录)的权限由三个不同的权限组成:所有者权限、所属组权限和其他用户权限。每个权限组都可以包含读取(r)、写入(w)和执行(x)权限。以下是所有可能的权限组合:

  • 所有者权限:

    • 读取权限(r):允许查看目录中的文件列表。
    • 写入权限(w):允许在目录中创建、删除和重命名文件。
    • 执行权限(x):允许进入目录。
  • 所属组权限:

    • 读取权限(r):允许查看目录中的文件列表。
    • 写入权限(w):允许在目录中创建、删除和重命名文件。
    • 执行权限(x):允许进入目录。
  • 其他用户权限:

    • 读取权限(r):允许查看目录中的文件列表。
    • 写入权限(w):允许在目录中创建、删除和重命名文件。
    • 执行权限(x):允许进入目录。

这些权限以符号形式表示,可以用数字或符号表示。例如,读取权限(r)用数字4表示,写入权限(w)用数字2表示,执行权限(x)用数字1表示。将这些数字相加,就可以得到一个三位数的权限表示形式。例如,读取和写入权限表示为6(4 + 2),读取和执行权限表示为5(4 + 1),所有权限表示为7(4 + 2 + 1)。

要设置一个文件夹的权限,可以使用chmod命令。例如,要将一个文件夹的所有者权限设置为读取、写入和执行,所属组权限设置为读取和执行,其他用户权限设置为执行,可以使用以下命令:

chmod 750 folder_name

这将为文件夹folder_name设置以下权限:

  • 所有者权限:读取、写入和执行(数字表示为7)。
  • 所属组权限:读取和执行(数字表示为5)。
  • 其他用户权限:执行(数字表示为0)。

请注意,只有文件夹的所有者或具有适当权限的用户才能更改文件夹的权限。

=========================

要设置一个文件夹没有删除权限,但具有其他权限,可以使用以下命令:

chmod 755 folder_name

这将为文件夹folder_name设置以下权限:

  • 所有者权限:读取、写入和执行(数字表示为7)。
  • 所属组权限:读取和执行(数字表示为5)。
  • 其他用户权限:读取和执行(数字表示为5)。

这样设置后,文件夹的所有者和所属组用户可以对其进行读取、写入和执行操作,而其他用户只能进行读取和执行操作,没有删除权限。

13 创建一个用户组,并且将这个用户组绑定到一个文件夹上

要在Linux中创建一个用户组,并将该用户组绑定到一个文件夹上,可以按照以下步骤进行操作:

  1. 创建用户组:
    使用以下命令创建一个新的用户组:

    sudo groupadd group_name
    

    group_name 替换为你想要创建的用户组的名称。

  2. 绑定用户组到文件夹:
    使用以下命令将用户组绑定到指定的文件夹:

    sudo chown :group_name folder_name
    

    group_name 替换为你创建的用户组的名称,将 folder_name 替换为你要绑定用户组的文件夹的路径。

    请注意,chown 命令中的冒号表示将用户组应用于文件夹。

现在,你已经创建了一个用户组并将其绑定到指定的文件夹上。用户组的成员将具有与该文件夹相关联的权限。

14 创建一个用户,并且将这个用户绑定到一个组上

在Linux中创建一个用户并将其绑定到一个组上,可以按照以下步骤进行操作:

  1. 创建用户:
    使用以下命令创建一个新的用户:

    sudo useradd -m username
    

    username 替换为你想要创建的用户的名称。选项 -m 用于同时创建用户的主目录。

  2. 设置用户密码:
    使用以下命令为用户设置密码:

    sudo passwd username
    

    username 替换为你创建的用户的名称。按照提示输入新密码并确认。

  3. 将用户添加到组:
    使用以下命令将用户添加到指定的组:

    sudo usermod -a -G group_name username
    

    group_name 替换为你要将用户添加到的组的名称,将 username 替换为你创建的用户的名称。选项 -a 用于添加用户到组而不覆盖现有组。

现在,你已经创建了一个用户并将其绑定到指定的组上。该用户将成为该组的成员,并具有与该组相关联的权限。

15 一个用户可以在这个文件夹下新增文件和文件夹,但是不可以删除东西,这个如何实现

要实现一个用户可以在文件夹下新增文件和文件夹,但不能删除文件或文件夹,可以通过以下步骤来设置权限:

  1. 创建一个用户组(如果还没有):

    sudo groupadd group_name
    

    group_name 替换为你想要创建的用户组的名称。

  2. 将文件夹的所有者设置为该用户组:

    sudo chown :group_name folder_name
    

    这将把文件夹 folder_name 的所有者设置为用户组 group_name

  3. 将文件夹的权限设置为允许所有者和组成员读、写和执行,但不允许删除:

    sudo chmod 775 folder_name
    

    这将设置文件夹 folder_name 的权限为 rwxrwxr-x。其中,所有者和组成员拥有读、写和执行权限,其他用户只有读和执行权限。

  4. 设置粘贴位权限,以防止其他用户删除文件:

    sudo chmod +t folder_name
    

    这将为文件夹 folder_name 设置粘贴位权限。

通过以上步骤,用户将能够在文件夹下新增文件和文件夹,但不能删除文件或文件夹。只有文件夹的所有者和超级用户才能删除文件。

以上是只有自己创建的东西才可以自己删除,其他人是删除不了的,

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

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

相关文章

短视频账号矩阵系统源码搭建步骤包括以下几个方面:

短视频账号矩阵系统源码搭建步骤包括以下几个方面&#xff1a; 1. 确定账号类型和目标受众&#xff1a;确定要运营的短视频账号类型&#xff0c;如搞笑、美食、美妆等&#xff0c;并明确目标受众和定位。 2. 准备账号资料&#xff1a;准备相关资质和资料&#xff0c;如营业执照…

在Windows 11中,把iPhone照片和视频导出来又快又简单,无需第三方软件

如果你想将照片和视频从iPhone传输到Windows 11 PC&#xff0c;最快、最简单的方法是插入手机并执行自动导入。以下是操作方法。 如何将照片和视频从iPhone导入Windows 如果你用USB数据线将iPhone插入Windows PC&#xff0c;Windows 11可以像标准数码相机一样连接到它&#x…

nacos在win11无法正常启动,一闪而过,pause也不停止。【已解决】

问题一闪而过&#xff0c;无法抓屏。 1.首先排除配置文件和数据库问题&#xff1b; 2.问题及解决方法&#xff1a; 分析&#xff1a;startup.cmd在执行时&#xff0c;无法找到jdk&#xff1b; 解决方法&#xff1a;配置jdk到环境变量&#xff1b; 再次启动正常&#xff1b;

用Pandas轻松进行7项基本数据检查

大家好&#xff0c;作为一名数据工程师&#xff0c;面对糟糕的数据质量&#xff0c;可以使用Pandas执行快捷的数据质量检查。本文使用scikit-learn提供的California Housing数据集&#xff0c;进行基本数据检查。 一、California Housing数据集概述 【数据集】&#xff1a; …

黑苹果之显卡篇

一、什么是显卡 显卡GPU&#xff08;Video card、Display card、Graphics card、Video adapter&#xff09;是个人计算机基础的组成部分之一&#xff0c;将计算机系统需要的显示信息进行转换驱动显示器&#xff0c;并向显示器提供逐行或隔行扫描信号&#xff0c;控制显示器的正…

关键字volatile作用和用法

目录 一、多线程编程中的volatile关键字 二、嵌入式编程中的volatile关键字 三、 优化编译器优化 四、 指针类型转换 一个定义为volatile的变量是说这变量可能会被意想不到地改变&#xff0c;这样&#xff0c;编译器就不会去假设这个变量的值了。 精确地说就是&#xff0c;…

【云原生-K8s】镜像漏洞安全扫描工具Trivy部署及使用

基础介绍基础描述Trivy特点 部署在线下载百度网盘下载安装 使用扫描nginx镜像扫描结果解析json格式输出 总结 基础介绍 基础描述 Trivy是一个开源的容器镜像漏洞扫描器&#xff0c;可以扫描常见的操作系统和应用程序依赖项的漏洞。它可以与Docker和Kubernetes集成&#xff0c;…

shell命令学习(1)——(待完善)

explainshell.com shell统计当前文件夹下的文件个数、目录个数Linux之shell常用命令&#xff08;三&#xff09; sort&#xff08;排序&#xff09;、uniq&#xff08;处理重复字符&#xff09; linux中shell将换行输入到文件中 shell脚本&#xff0c;将多行内容写入文件中 f…

springboot086靓车汽车销售网站

springboot086靓车汽车销售网站 成品项目已经更新&#xff01;同学们可以打开链接查看&#xff01;需要定做的及时联系我&#xff01;专业团队定做&#xff01;全程包售后&#xff01; 2000套项目视频链接&#xff1a;https://pan.baidu.com/s/1N4L3zMQ9nNm8nvEVfIR2pg?pwd…

Javascript编程进阶 – 预定义函数

Javascript编程进阶 – 预定义函数 JavaScript Programming Advanced – Predefined Functions By JacksonML JavaScript引擎中包含了一组built-in functions(内建函数)。 本文简要介绍如何通过实践使用这些预定义函数并掌握传递参数和返回值。希望对您有所帮助。 JavaScri…

如何使用HadSky搭配内网穿透工具搭建个人论坛并发布至公网随时随地可访问

文章目录 前言1. 网站搭建1.1 网页下载和安装1.2 网页测试1.3 cpolar的安装和注册 2. 本地网页发布2.1 Cpolar临时数据隧道2.2 Cpolar稳定隧道&#xff08;云端设置&#xff09;2.3 Cpolar稳定隧道&#xff08;本地设置&#xff09;2.4 公网访问测试 总结 前言 经过多年的基础…

【我爱C语言】详解字符函数isdigit和字符串转换函数(atoi和snprintf实现互相转换字符串)三种strlen模拟实现

&#x1f308;write in front :&#x1f50d;个人主页 &#xff1a; 啊森要自信的主页 ✏️真正相信奇迹的家伙&#xff0c;本身和奇迹一样了不起啊&#xff01; 欢迎大家关注&#x1f50d;点赞&#x1f44d;收藏⭐️留言&#x1f4dd;>希望看完我的文章对你有小小的帮助&am…

使用Python实现轮盘赌选择法Roulette Wheel Selection Method in Python

一、引言 最近在手写遗传算法&#xff0c;想尝试解决一些优化问题。然而&#xff0c;在编码的过程中&#xff0c;自己发现了很多都不懂的问题。比如&#xff0c;交叉的操作&#xff0c;有单点交叉、两点交叉和多点交叉&#xff0c;具体选哪一种会更好呢&#xff1f;未知。还有交…

异常检测 | 基于孤立森林(Isolation Forest)的数据异常数据检测(结合t-SNE降维可视化)

异常检测 | MATLAB实现基于孤立森林的数据异常检测 目录 异常检测 | MATLAB实现基于孤立森林的数据异常检测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 Matlab实现基于孤立森林(Isolation Forest)的数据异常数据检测可视化&#xff08;完整源码和数据) 基于孤立森林(…

好用免费的AI换脸5个工具

在当今社会的发展中&#xff0c;人工智能&#xff08;Artificial Intelligence, AI&#xff09;扮演着关键的角色&#xff0c;其应用领域不断扩展。作为AI的一个分支&#xff0c;换脸技术近年来备受欢迎。这项技术使得将一个人的面部特征迁移到另一个人的照片或视频成为可能。除…

【React】路由的基础使用

react-router-dom6的基础使用 1、安装依赖 npm i react-router-dom默认安装最新版本的 2、在src/router/index.js import { createBrowserRouter } from "react-router-dom"/* createBrowserRouter&#xff1a;[/home]--h5路由createHashRouter&#xff1a;[/#/ho…

各种滤波算法的比较(GF、KF、EKF、UKF、PF),内附简单实现代码

目录 一、前言 二、滤波算法介绍 1、GF&#xff08;高斯滤波&#xff09; 2、KF&#xff08;卡尔曼滤波&#xff09; 3、EKF&#xff08;可扩展卡尔曼滤波&#xff09; 4、UKF&#xff08;无迹卡尔曼滤波&#xff09; 5、PF&#xff08;粒子滤波&#xff09; 三、不同滤…

zabbix配置snmp trap--使用snmptrapd和Bash接收器--图文教程

1.前言 我的zabbix的版本是5.0版本&#xff0c;5.0的官方文档没有使用bash接收器的示例&#xff0c;6.0的官方文档有使用bash接收器的示例&#xff0c;但是&#xff0c;下载文件的链接失效&#xff1f;&#xff01; 这里讲解zabbix-server端配置和zabbix web端配置 2.zabbix-…

Day04 Liunx高级系统设计4-信号

进程间通讯 引入 如何将 A 进程中的数据传入 B 进程呢 ? 我们要使用进程间通讯 概述 中文名 : 进程间通讯 英文名 :IPC 英文全称 :Inter Processes Communication 作用: 数据传输&#xff1a;一个进程需要将他的数据发送给另一个进程】 资源共享&#xff1a;多个进程可以…

排序:直接选择排序

直接选择排序&#xff1a; 本质&#xff1a; 直接选择排序的本质就是在数组中进行遍历挑选出最大的元素&#xff0c;讲最大的元素放到对应的位置后&#xff0c;再次选出次大的位置&#xff0c;而后又放到对应的位置..........................直到数组成为一个有序序列。 优…