Linux入门攻坚——3、基础命令学习-文件管理、别名、glob、重定向、管道、用户及组管理、权限管理

文件管理:cp,mv,rm

cp:复制命令,copy
    cp [OPTION]... [-T] SRC DEST
    cp [OPTION]... SRC... DIRECTORY
    cp [OPTION]... -t DIRECTORY DEST...

        如果目标不存在,新建DEST,并将SRC中的内容填充至DEST中;如果DEST存在,将SRC的内容覆盖至DEST中;如果DEST是目录,在DEST下新建与原文件同名的文件,并填充内容。
        如果原是多个文件,DEST必须存在且是目录,否则出错。
        SRC是目录时,则要使用专用选项:-r,如果DEST不存在,则创建DEST目录,复制SRC目录中所有文件至DEST中;如果DEST存在且是文件,报错,DEST是目录,则复制文件支持。
选项:
    -i : 交互
    -r,R : 递归复制目录及内部的所有内容
    -a : 归档; 相当于-dR --preserve=all
        --preserve=[ATTR_LIST]  ,mode:权限,ownership:属主属组,timestamp:时间戳,links,xatttr,context,all,即复制的文件保留的属性。
    -p:--preserve=mode,ownership,timestamp,后面无等号时,相当于保留这三项
    -v : --verbose
    -f : --force

mv:移动文件,move
    mv [OPTION]... [-T] SRC DEST
    mv [OPTION]... SRC... DIRECTORY
    mv [OPTION]... -t DIRECTORY SRC...

        如果SRC和DEST都是文件,DEST不存在则创建DEST文件,并将SRC中的内容填充或覆盖至DEST中删除SRC;如果DEST是目录,则在DEST目录下创建与SRC同名文件,然后内容填充后删除SRC;如果SRC是目录,则DEST必须是目录,把SRC下的所有文件移动到DEST目录下,然后删除SRC。
选项:
    -i:交互
    -f:强制

rm:删除,remove,默认不能删除目录,加-r选项可以删除目录。rm -rf / :一切清净了:删根
    rm [OPTION]... FILE...
选项:
    -i:交互式
    -r:递归删除
    -f:强制

nano:文本编辑器
    Ctrl+R,读入其他文件,Ctrl+O,保存,Ctrl+X,退出

bash的基础特性(2)
    1、命令别名(alias)
        通过alias命令实现:alias [-p] [name[=value] ... ]
        注意:在命令行中定义的别名,仅对当前shell进程有效;如想永久有效,定义在配置文件中;仅对当前用户有效的配置文件:~/.bashrc  ; 对所有用户有效配置文件:/etc/bashrc  ;
        通过alias命令会立即生效,配置文件则需要重新读取配置文件。
        bash进程中重新读取配置文件: source /path/to/config_file  或  . /path/to/config_file   ;
    撤销别名:unalias [-a] name [name...]
    注意:如果别名同原命令的名称,则如果要执行原命令,可使用“\COMMAND”;
    2、glob(globbing)——文件名匹配、通配、代换等。wildcard:?、*、[]
    bash中用于实现文件名“通配”
        * :任意长度的任意字符,a*b:aab,ab,a12333b,
        :任意单个字符,
        [] :匹配指定范围内的任意单个字符:[0-9],[a-z]——不区分大小写,[A-Z],仅大写,
        [^] :取反,[^0-9],除数字
        专用字符集合:
            [:digit:] : 任意数字,相当于0-9
            [:lower:] : 任意小写字母
            [:upper:] :任意大写字母
            [:alpha:] :任意大小写字母
            [:alnum:] :任意数字或字母,alpha和number(digit)
            [:space:] :任意空白字符
            [:punct:] :标点符号
    3、bash的快捷键
        Ctrl+L : 清屏,相当于clear
        Ctrl+a : 跳转至命令开始处
        Ctrl+e : 跳转至命令结尾处
        Ctrl+c : 取消命令的执行/输入
        Ctrl+u : 删除命令行首至光标所在处的所有内容
        Ctrl+k : 删除光标所在处至命令行尾部的所有内容
    4、bash的I/O重定向及管道
        程序:指令+数据,读入数据:Input,输出数据:Output
        打开的文件都有一个fd:file descriptor(文件描述符)
        标准输入:keyboard,fd为0;标准输出:monitor,fd为1 ;标准错误输出:monitor,fd为2
    输出重定向: command > new_pos ,  command >> new_pos
        > : 覆盖重定向,目标文件中的原有内容会被清除;(有一定危险性)
        >> : 追加重定向,新内容会追加至目标文件尾部;
        # set -C :禁止将内容覆盖输出至已有文件中。
            强制覆盖: >|,如cat /etc/fstab >| /tmp/aa.txt  (aa.txt存在)
        # set +C : 启用将内容覆盖输出至已有文件中。
        2> : 错误重定向,覆盖重定向错误输出数据流
        2>> : 追加重定向错误输出数据流
        标准输出和错误输出各自定向至不同位置:command > /path/to/file.out 2> /path/to/error.out
        合并标准输出和错误输出为同一个数据流进行重定向: &>,覆盖重定向,&>>,追加重定向
        也可以:comamnd > /path/to/file.out 2> &1  ;  comamnd > /path/to/file.out 2>> &1
    输入重定向: <
        tr命令:转换或删除字符
            tr [option]... SET1  [SET2]
        << :
Here Documentation
        #
cat << EOF    ;    # cat > /path/to/somefile.out  << EOF
    管道: |
        command1 | command2 | command3 | ...
        注意:最后一个命令会在当前shell进程的子shell进程中执行
        tee命令:一个输入,两个输出,如:一个到标准输出,一个到文件
            tee [OPTION]... [FILE]... : tee  /tmp/tee.out,文件是覆盖输出

文件处理工具:wc、cut、sort、uniq

    wc命令:统计文件中内容数据
        wc [OPTION]... [FILE]... 
            -l :行数
            -w:单词数
            -c:字符数

    cut命令:对文件内容进行分隔,按分隔符将每行分割成多个字段
        cut OPTION... [FILE]...
            -d"" :指明分隔符
            -f # :指定第几个字段,从1开始,也可以#,#,#或#-#
            --output-delimiter =STRING : 指定输出的分隔符

    sort命令:排序,也可以分割字段
        sort [OPTION]... [FILE]...
            -r:逆序
            -f:忽略字符大小写
            -t DELIMITER:指明分隔符
            -k #:以指定字段为标准排序
            -n:按数值大小排序,而不是按ascii码
            -u:uniq,排序后去重

    uniq命令:去重
        uniq [option]....[file]...:        注意:连续且相同才是重复
            -c:显示每行重复出现的次数
            -d:仅显示重复过的行
            -u:仅显示未重复的行

用户和组管理

只有一个密码,通常叫token(令牌),有用户和密码,叫identity(认证)

资源分派:
    Authentication:认证
    Authorization:授权
    Accounting(Audition):审计

Linux用户:Username/UID
    管理员:root,0
    普通用户:1~65535
        系统用户:1~499,守护进程获取资源进行权限分配
        登录用户:500+,交互式登录。

Linux组:Groupname/GID
    管理员组:root,0
    普通组:1~
        系统组:1~499
        普通组:500+

Linux安全上下文:
    我们对计算机的使用是通过程序来完成的。如要查看目录下的文件列表,使用ls /etc,这里涉及程序运行的身份问题。
    运行中的程序:进程(process)
        以进程发起者的身份运行:        root:cat    与  tom:cat
        进程所能够访问的所有资源的权限取决于进程的发起者的身份,这就是Linux的安全上下文。

Linux组的类别:
    用户的基本组(主组):
        组名同用户名,且仅包含一个用户:私有组;创建用户时,如不指定用户组自动创建私有组
    用户的附加组(额外组):

Linux用户和组的相关的配置文件:
    /etc/passwd : 用户及其属性信息(名称,UID、基本组ID等)
    /etc/group : 组及其属性信息;
    /etc/shadow : 用户密码及其相关属性;
    /etc/gshadow : 组密码及其相关属性;

/etc/passwd : 
    account:password:UID:GID:GECOS:directory:shell
    用户名 : 密码 : UID :GID:GECOS:主目录:默认shell
/etc/group :
    group_name:passwd:GID:user_list
    组名:组密码:GID:以当前组为附加组的用户列表
/etc/shadow: 冒号分隔的9个字段,分别是
    用户名:加密的密码:最近更改密码日期:密码最小使用期限:密码最大使用期限:密码警告时间段:密码禁用期:账户过期日期:保留字
        加密机制:使用单向加密,提取数据指纹;可以使用md5sum FILENAME、sha1sum,sha224sum,sha256sum,sha384sum、sha512sum...   :shadow记录示例 tom:$6$SPA7IWW1$OT3vzRTi/8gPH1lpbOnS.fETPy6TiPo7IlIyYyuCsXVRwkIOyg/lKw1VWGLSXNkyRem0Gxd5p5J1R1v9tJWqJ1:19591:0:99999:7:::
    密码部分:以$分隔,$6代表加密算法,SHA512,$SPA7IWW1代表杂质,即加的盐(salt),后面是是对密码和杂质经过SHA512计算出的指纹。

用户和组相关的管理命令:
    用户创建:useradd (adduser), 
    useradd [options] LOGIN
        -u,--uidUID : 大于等于UID_MIN,小于UID_MAX,在/etc/login.defs中,指定UID。
        -g GID : 指明用户所属的基本组,可为组名,也可为GID;
        -c COMMENT : 用户注释信息。
        -d HOME_DIR : 指定家目录,默认是同用户名的目录。如目录存在,不会拷贝/etc/skel
        -s :用户的shell。可用列表在/etc/shells文件中,
        -G GROUP1,GROUP2,...: 用户的附加组,组必须事先存在。
        -D : 修改默认值,在/etc/default/useradd文件中

    用户组创建:groupadd [option]... group_name
        -g GID:指明GID号[GID_MIN,GID_MAX]
        -r : 创建系统组

    ID命令:查看用户相关的ID信息
        id [option]... [USER]
            -u  -g   -G  -n 

    su切换用户或以其他用户身份执行命令
        su [options...]  [-]  [user [args...]]
        切换用户的方式:
           su UserName:非登录式切换,即不会读取目标用户的配置文件
            su - UserName : 登录式切换,会读取目标用户的配置文件,完全切换。
            注:root su至其他用户无须密码,非root用户切换时需要密码。

        换个身份执行命令:
            su [-] UserName -c 'COMMAND'
        选项:-l :"su -l UserName" 相当于 “su - UserName”

用户属性修改:usermod
    usermod [option] login
        -u UID : 新UID
        -g GID : 新基本组
        -G G1,G2... : 新附加组,原来的附加组将会被覆盖,若想保留,使用-a,表示append
        -s SHELL : 新的默认SHELL
        -c ‘comment’ : 新的注释信息
        -d HOME : 新的家目录,原有家目录中的文件不会同时移动,若要移动,使用-m
        -l login_name : 新的名字
        -L : lock指定用户
        -U : 解锁指定用户
        -e YYYY-MM-DD:账号过期日期

给用户添加密码:passwd
    passwd [option] UserName:修改指定用户的密码,仅root有权
    passwd : 修改自己的密码
        -l :锁定指定用户
        -u : 解锁
        -n mindays :最短使用期限
        -x maxdays : 最大使用期限
        -w warndays :提前多少天警告用户
        -i inactivedays : 非活动期限
        -e expireday :过期日期
        --stdin : 从标准输入接收用户密码:echo “PASSWD” | passwd --stdin USERNAME
        注意:/dev/null:bit buckets,黑洞;/dev/zero:

删除用户:userdel
    userdel [option]... login
        -r :删除用户家目录

组属性修改:groupmod
    groupmod [option]... group
        -n group_name : 新名字
        -g GID :新的GID

组删除:groupdel
    groupdel GROUP

组密码:gpasswd
    gpasswd [option] GROUP
        -a user:将user添加至指定组中
        -d user : 删除用户user的以当前组为组名的附加组
        -A user1,user2... : 设置有管理权限的用户列表

newgrp : 临时切换基本组:如用户本不属于此组,需要组密码,否则不需要组密码。

pwck :检查密码文件的完整性

修改用户的属性:chage
    chage [option] USERNAME
        -d :
        -E :
        -I :
        -m :
        -M :
        -W :

其他命令:chfn,chsh,finger

权限管理:

文件的权限主要针对三类对象进行定义:
owner : 属主,u
group : 属组,g
other : 其他,o

每个文件针对每类访问者都定义了三种权限:
r:Readable
w:Writable
x:eXcutable

文件:
    r:可使用文件查看类工具获取其内容
    w:可修改其内容
    x:可以把此文件提请给内核启动为一个进程。

目录:
    r:可使用ls查看此目录中的文件列表
    w:可在此目录中创建文件,也可删除此目录中的文件
    x:可以使用ls -l查看此目录中文件列表,可以cd进此目录。

每类访问者权限组合,共7组:
--- 000 0;--x 001 1;-w- 010 2;-wx 011 3;r-- 100 4 ;r-x 101 5 ;rw- 110 6;rwx 111 7 
即每组可用一个八进制数0~7表示,三组就3个八进制,如 :640:rw-r-----

修改文件权限:
chmod:修改文件权限
chmod [OPTION]... OCTAL-MODE FILE...  
    -R : 递归修改权限
chmod [OPTION]... MODE[,MODE]... FILE...
    MODE:
        修改一类用户的所有权限:
        u=  ; g=   ;o=   ;ug=   ;a=    ;u=,g=    ;
        修改一类用户某位或某些位权限
        u+  ;u-  ;
chmod [OPTION]... --reference=RFILE FILE...
    参考REFILE文件的权限,将FILE的权限修改为同REFILE

修改文件的属主属组:仅root可用
修改文件的属主:chown 
   chown [OPTION]... [OWNER][:[GROUP]] FILE...
        owner : 只改属主
        owner:group :修改属主属组
        :group : 修改属组
        注意:命令中的冒号可以用点号.替换
        -R :递归修改
    chown [OPTION]... --reference=RFILE FILE...
修改文件的属组:chgrp
    chgrp [OPTION]... GROUP FILE...
    chgrp [OPTION]... --reference=RFILE FILE...

        -R :递归

文件或目录创建时的遮罩码:umask
    FILE:666-umask
        注意:对文件,如果某类用户的权限减得的结果中存在x权限,则将其权限+1
    DIR:777-umask
    umask :查看
    umask # :设定

命令小结

cp [OPTION]... [-T] SRC DEST    复制操作,源、目标都是文件
cp [OPTION]... SRC... DIRECTORY   源是文件,目标是目录
cp [OPTION]... -t DIRECTORY SRC... -t 源在后,目标在前

    mv [OPTION]... [-T] SRC DEST   都是文件,无DEST先创建,再覆盖填充DEST,最后删除SRC。
    mv [OPTION]... SRC... DIRECTORY  移动到目标目录中
    mv [OPTION]... -t DIRECTORY SRC...

 rm [OPTION]... FILE...  删除文件

nano:文本编辑器,Ctrl+R可读入其他文件内容到当前文档,Ctrl+O,保存,Ctrl+X,退出

alias [-p] [name[=value] ... ]  定义命令别名,仅对当前shell进程有效,永久有效,配置到~/.bashrc(用户)或/etc/bashrc(全局)配置文件中

source .bashrc  :重新加载配置文件,使修改的配置生效。

unalias [-a] name [name...]  删除别名

set -C | +C   :设置禁止或启用覆盖输出

>,>>,>|,2>,2>>,&>,&>>,2>&1,2>>&1,< :输出覆盖重定向,输出追加重定向,输出强制覆盖重定向,错误覆盖输出重定向,错误追加输出重定向,标准输出和错误输出覆盖重定向,标准输出和错误输出追加重定向,错误覆盖输出到标准输出中,错误追加输出到标准输出中,标准输入重定向

| :管道命令,将上一个命令的执行结果作为下一个命令的标准输入

tr [option]... SET1  [SET2] : 转换或删除字符

cat << EOF  : 标准输入,以EOF作为输入的结束。

tee [OPTION]... [FILE]... : tee  /tmp/tee.out,文件是覆盖输出,一个输入,两个输出,如:一个到标准输出,一个到文件

wc [OPTION]... [FILE]... 统计文件中内容数据,选项:-l :行数;-w:单词数;-c:字符数

cut OPTION... [FILE]...对文件内容进行分隔,按分隔符将每行分割成多个字段  选项:-d"" :指明分隔符;-f # :指定第几个字段,从1开始,也可以#,#,#或#-#;  --output-delimiter =STRING : 指定输出的分隔符

sort [OPTION]... [FILE]...排序,也可以分割字段。选项:-r:逆序;-f:忽略大小写;-t DELIMITER:指明分隔符;-k #:以指定字段为标准排序;-n:按数值大小排序,而不是按ascii码;-u:uniq,排序后去重。

uniq [option]....[file]...:去重。,注意:连续且相同才是重复,-c:显示每行重复出现的次数
;-d:仅显示重复过的行;-u:仅显示未重复的行

useradd [options] LOGIN : 添加用户,选项:-u,指定UID,-g,指定GID(基本组),-c,注释,-d,家目录,-s,默认shell,-G,附加组,-D,修改默认值

groupadd [option]... group_name:用户组创建。-g :指明GID号,-r : 创建系统组

id [option]... [USER]:  查看用户相关的ID信息  -u  -g   -G  -n 

su [options...]  [-]  [user [args...]]: 切换用户:su UserName:非登录式切换,即不会读取目标用户的配置文件;su - UserName : 登录式切换,会读取目标用户的配置文件,完全切换。 注:root su至其他用户无须密码,非root用户切换时需要密码。

su [-] UserName -c 'COMMAND': 换个身份执行命令。"su -l UserName" 相当于 “su - serName”

usermod [option] login:用户属性修改。-u : 新UID;-g : 新基本组;-G G1,G2... : 新附加组,原来的附加组将会被覆盖,若想保留,使用-a,表示append;-s : 新的默认SHELL; -c : 新的注释信息;-d: 新的家目录,原有家目录中的文件不会同时移动,若要移动,使用-m;-l: 新的名字;-L : lock指定用户;-U : 解锁指定用户; -e YYYY-MM-DD:账号过期日期

passwd [option] UserName:修改指定用户的密码,仅root有权
passwd : 修改自己的密码。-l :锁定指定用户;-u :解锁;-n mindays :最短使用期限;-x maxdays :最大使用期限;-w warndays :提前多少天警告用户;-i inactivedays :非活动期限;-e expireday :过期日期;--stdin :从标准输入接收用户密码:echo “PASSWD” | passwd --stdin USERNAME,注意:/dev/null:bit buckets,黑洞;/dev/zero:

userdel [option]... login:     删除用户。   -r :删除用户家目录

groupmod [option]... group:修改组属性。  -n group_name : 新名字;    -g GID :新的GID

groupdel GROUP :删除组。

gpasswd [option] GROUP :设置组密码。 -a user:将user添加至指定组中;-d user :删除用户user的以当前组为组名的附加组;-A user1,user2... : 设置有管理权限的用户列表

newgrp group :临时切换基本组,如本不属于此组,需输入组密码。

pwck:检查用户、密码文件的完整性。

chage:修改用户属性。选项:-d、-E、-I、-m 、-M、-W 

chfn:修改注释信息

chsh:修改用户shell

finger:查看用户注释信息

chmod [OPTION]... OCTAL-MODE FILE... 修改文件的权限。-R : 递归修改,以八进制模式修改

chmod [OPTION]... MODE[,MODE]... FILE... : 修改一类用户的所有权限u= ;g= ;o=;ug=;a= ;u=,g= ; 修改一类用户某位或某些位权限:u+ ;u- ;

chmod [OPTION]... --reference=RFILE FILE...: 参考REFILE文件的权限,将FILE的权限修改为同REFILE

chown [OPTION]... [OWNER][:[GROUP]] FILE...:修改文件属主属组,只有管理员可用。owner:只改属主; owner:group :修改属主属组;:group :修改属组; 注意:命令中的冒号可以用点号.替换

chgrp [OPTION]... GROUP FILE...:修改文件属组

chgrp [OPTION]... --reference=RFILE FILE...        -R :递归

umask:查看遮罩码,umask #:设置遮罩码。

md5sum FILENAME、sha1sum,sha224sum,sha256sum,sha384sum、sha512sum,加密

相关文件:

~/.bashrc:仅对当前用户有效的配置文件
/etc/bashrc:对所有用户有效配置文件
/etc/passwd : 用户及其属性信息(名称,UID、基本组ID等)    
/etc/group : 组及其属性信息;    
/etc/shadow : 用户密码及其相关属性;    
/etc/gshadow : 组密码及其相关属性;
/etc/login.defs:记录用户创建时的各字段值范围的环境变量及其值,如UID_MIN,创建普通用户时的最小UID
/etc/skel/ : 创建用户时,用户家目录的默认模板目录,即家目录中的默认文件
/etc/default/useradd:添加用户时的配置模板文件
/dev/null:bit buckets,黑洞;
/dev/zero:产生任意个0

用户密码期限图:

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

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

相关文章

瑞芯微RK3568核心板在边缘服务器产品中的应用-迅为电子

迅为RK3568核心板在边缘服务器产品中可以发挥关键作用&#xff0c;为边缘计算应用提供高性能的计算和多媒体处理能力。边缘服务器通常用于处理和存储数据&#xff0c;执行本地计算任务&#xff0c;并支持与远程云服务的通信。以下是RK3568核心板在边缘服务器产品中的应用方案&a…

Web攻防01-ASP应用相关漏洞-HTTP.SYSIIS短文件文件解析ACCESS注入

文章目录 ASP-默认安装-MDB数据库泄漏下载漏洞漏洞描述 ASP-中间件 HTTP.SYS&#xff08;CVE-2015-1635&#xff09;1、漏洞描述2、影响版本3、漏洞利用条件4、漏洞复现 ASP-中间件 IIS短文件漏洞1、漏洞描述2、漏洞成因:3、应用场景&#xff1a;4、利用工具&#xff1a;5、漏洞…

寻找可靠的软件外包开发公司

寻找可靠的软件外包开发公司是关键&#xff0c;以确保项目的顺利交付和质量。以下是一些方法和步骤&#xff0c;帮助您找到可靠的软件外包开发公司&#xff0c;希望对大家有所帮助。北京木奇移动技术有限公司&#xff0c;专业的软件外包开发公司&#xff0c;欢迎交流合作。 明确…

Ubuntu 16.04 LTS third maintenance update release

Ubuntu 16.04 LTS (Xenial Xerus)今天迎来的第三个维护版本更新中&#xff0c;已经基于Linux Kernel 4.10内核&#xff0c;而且Mesa图形栈已经升级至17.0版本。Adam Conrad表示&#xff1a;“像此前LTS系列相似&#xff0c;16.04.3对那些使用更新硬件的用户带来了硬件优化。该版…

SpringBoot整合Activiti7——执行监听器(六)

文章目录 一、执行监听器事件类型生命周期配置方式(选)代码实现xml文件创建监听器class方法expression方法delegateExpression 测试流程部署流程启动流程完成任务 一、执行监听器 在流程实例执行过程中触发某个事件时&#xff0c;Activiti提供的执行监听器可以捕获该事件并执行…

(三十四)大数据实战——scala运行环境安装配置及IDEA开发工具集成

前言 本节内容我们主要介绍一下scala运行环境的安装配置以及在idea开发工具中集成scala插件&#xff0c;便于scala项目的开发。 在开始scala安装配置之前&#xff0c;我们要先安装好jvm运行环境&#xff0c;scala运行于Java虚拟机&#xff08;JVM&#xff09;上&#xff0c;并…

信息检索与数据挖掘|(四)索引构建

目录 &#x1f4da;硬件基础 &#x1f4da;基于块的排序索引方法 &#x1f407;BSBI算法(blocked sort-based indexing) &#x1f4da;内存式单遍扫描索引构建方法 &#x1f407;SPIMI算法(single-pass in-memory indexing) &#x1f4da;分布式索引构建方法 &#x1f4d…

自动化测试 —— Pytest fixture及conftest详解!

前言 fixture是在测试函数运行前后&#xff0c;由pytest执行的外壳函数。fixture中的代码可以定制&#xff0c;满足多变的测试需求&#xff0c;包括定义传入测试中的数据集、配置测试前系统的初始状态、为批量测试提供数据源等等。fixture是pytest的精髓所在&#xff0c;类似u…

科技资讯|苹果Vision Pro可通过手势ID检测不同用户

近日&#xff0c;美国专利局公布了苹果公司的一项专利申请&#xff0c;该专利申请涉及基于手部特征验证用户身份的技术。苹果指出&#xff0c;可能是多个家庭成员都想使用 Apple Vision Pro&#xff0c;系统必须识别不同的手势以控制 visionOS。在另一个示例中&#xff0c;苹果…

基于变电站自动化系统中的安全措施分析及应用

摘要&#xff1a;阐述变电运行中的问题&#xff0c;电气自动化系统与安全运行措施&#xff0c;包括自动控制设备的投入&#xff0c;电气自动 化与计算机技术相、设备数据的采集与处理、自动化系统的升级、人工智能技术的应用。 关键词&#xff1a;自动控制&#xff1b;数据采…

【Redis】Redis持久化策略

目录 策略RDBbgsave执行流程RDB效果演示RDB优缺点 AOFAOF缓冲区刷新策略AOF的重写机制AOF重写机制的触发机制AOF重写流程 混合持久化同时存在aof和rdb快照&#xff0c;以谁为主&#xff1f;信号 策略 RDB > Redis DataBase 相当于定期的方式实现持久化AOF > Append Only…

用PHP爬取视频代码示例详细教程

以下是一个使用Symfony Panther和PHP进行爬虫的示例程序&#xff0c;用于爬虫企鹅上的视频。请注意&#xff0c;这个示例需要使用https://www.duoip.cn/get_proxy这段代码获取爬虫IP。 <?php // 引入所需的库 require vendor/autoload.php;use Symfony\Component\Panther\P…

人工智能应该怎么学?

人工智能这个词炙手可热&#xff0c;为了跟上时代的步伐&#xff0c;有许多小伙伴就想学习人工智能&#xff0c;今天来介绍一下人工智能究竟是什么&#xff1f;应该怎么学&#xff1f;怎么入门&#xff1f; 首先来看一下什么是人工智能&#xff1f; 人工智能 人工智能 人工智能…

Unity——数据存储的几种方式

一、PlayerPrefs PlayerPrefs适合用于存储简单的键值对数据 存储的数据会在游戏关闭后依然保持&#xff0c;并且可以在不同场景之间共享&#xff0c;适合用于需要在游戏不同场景之间传递和保持的数据。 它利用key-value的方式将数据保存到本地&#xff0c;跟字典类似。然后通…

ADAS可视化系统,让自动驾驶更简单 -- 入门篇

随着车载芯片的升级、技术的更新迭代&#xff0c;可视化ADAS逐渐变成汽车的标配走入大家的生活中&#xff0c;为大家的驾车出行带来切实的便捷。那么你了解HMI端ADAS的实现过程吗&#xff1f;作为ADAS可视化系统的入门篇&#xff0c;就跟大家聊一聊目前较常见的低消耗的一种ADA…

typora主题切换与推荐主题

在这篇博文中&#xff0c;我将向你展示如何给typora更换主题&#xff0c;并推荐几款出色的主题。通过这些主题的使用&#xff0c;你可以为你的typora编辑器增添一抹别样的风采&#xff0c;让你的写作体验更加美好、舒适。 typora替换主题的步骤非常简单&#xff0c;只需按照以…

C语言 形参、实参

定义 形参 形式上的参数&#xff0c;没有确定的值 实参 实际存在的&#xff0c;已经确定的参数&#xff0c;常量&#xff0c;变量&#xff0c;表达式&#xff0c;都是实参 区别 实参的值不随形参的变化而变化 在C语言中&#xff0c;数据传送是单向的&#xff0c;即只能把实…

【日常业务开发】接口性能优化

【日常业务开发】接口性能优化 缓存本地缓存分布式缓存 数据库分库分表SQL 优化 业务程序并行化异步化池化技术预先计算事务粒度批量读写锁的粒度尽快return上下文传递空间换时间集合空间大小 缓存 本地缓存 本地缓存&#xff0c;最大的优点是应用和cache同一个进程内部&…

怎么使用动态代理IP提升网络安全,动态代理IP有哪些好处呢

随着互联网的普及和数字化时代的到来&#xff0c;网络安全问题越来越受到人们的关注。动态代理IP作为网络安全中的一种技术手段&#xff0c;被越来越多的人所采用。本文将介绍动态代理IP的概念、优势以及如何应用它来提升网络安全。 一、动态代理IP的概念 动态代理IP是指使用代…

docker的资源限制参数设置错误,导致的clickhouse性能瓶颈

文章目录 使用场景问题现象解决处理 使用场景 我们使用docker作为服务的虚拟化工具&#xff0c;服务都部署在docker里我们使用docker-compose管理所有docker服务的配置文件针对某些服务&#xff0c;我们要限制这个docker服务容器占用的资源数量&#xff0c;例如cpu和内存在进行…