Linux命令_ps 进程管理

news2024/11/20 7:16:34

简介

        ps通过读取 /proc 中的虚拟文件来工作,不需要 setuid kmem 或有任何特权来运行。

        CPU使用率目前表示为进程整个生命周期中运行所花费时间的百分比。这是不理想的,它不符合ps在其他方面所符合的标准。CPU使用率加起来不太可能达到100%。

        SIZE和RSS字段不计算进程的某些部分,包括页表、内核堆栈、结构体 thread_info 和结构体 task_struct。通常至少有20kib的内存是常驻的。

        标记为 <defunct> 的进程是死进程(所谓的“僵尸”),因为它们的父进程没有正确地销毁它们,所以它们仍然存在。如果父进程退出,这些进程将被init(8)销毁。如果用户名的长度大于显示列的长度,则显示数字用户ID。不建议使用 ps -aux 等命令选项,因为这会混淆两种不同的标准。根据POSIX和UNIX标准,上面的命令要求显示带有TTY的所有进程(通常是用户正在运行的命令)加上名为“x”的用户拥有的所有进程。如果用户不存在,ps 会认为你说的是 ps aux。 

目录

1. 语法

1.1. 常用参数

基本选项

按列表选择

输出格式

显示读

其他选项

OBSOLETE 排序键

2. 推荐用法

2.1. 标准语法

2.2. BSD语法

2.3. 打印进程树

2.4. 获取有关线程的信息

2.5. 获取安全信息

2.6. 自定义输出格式

3. 指定用户

3.1. 指定单个/多个用户

3.2. 查看当前用户下进程 

4. 排序查询 

4.1. 按cpu使用率排序

4.2. 按物理内存使用率排序

4.3. 按虚拟内存使用排序

5. 字段说明

5.1. OS命令类

5.2. CPU类

5.3. 进程类

5.4. 内存类

5.5. 优先级类

5.6. 用户类

5.7. ID类

5.8. 掩码类

5.9. 指针类

5.10. 终端类


1. 语法

ps  [选项]

1.1. 常用参数

基本选项

-A:所有进程
-e:所有进程
-a:都使用tty,除了会话引导符
-d:除会议负责人外
-N:取消选择否定选择
 a:都使用tty,包括其他用户
 r:只运行进程
 T:该终端上的所有进程
 x:进程而不控制ttys

按列表选择

-C <command>:命令名
-p <PID>    :进程id
-q <PID>    :进程id(快速模式) 
--ppid <PID>:父进程id          
-s <session>:会话id
-G <GID>    :真实组id或组名
-g <group>  :会话或有效组名
-t <tty>    :终端
-u <UID>    :有效的用户id或名称
-U <UID>    :用户id或名称

以逗号分隔的列表:-u root,nobody
以空白分隔的列表:-p 123 4567

输出格式

-F:更完整的格式
-f:完整格式,包括命令行
 f:ASCII艺术处理树
-H:显示进程层次结构
-j:作业的格式
 j:BSD作业控制格式
-l:长格式
 l:BSD长格式
-M, Z:添加安全数据(用于SELinux)
-O <format>:预加载默认列
 O <format>:为-O,具有BSD个性
-o <format>:用户定义的格式
 s:信号格式
 u:面向用户的格式
 v:虚拟存储器格式
 X:寄存器的格式
-y:不显示标志,显示RSS和地址(与 -l 一起使用)
    --context:显示安全上下文(用于SELinux)
    --headers:重复标题行,每页一个
    --no-headers:不打印页眉吗
    --cols, --columns, --width <num>:设定屏幕宽度
    --rows, --lines <num>:设定屏高

显示读

 H:就好像它们是过程一样
-L:可能有LWP和NLWP列
-m:后过程
-T:可能与SPID列

其他选项

-c:使用-l选项显示调度类
 c:显示真实命令名
 e:命令后显示环境
 k:指定排序顺序为: [+|-]key[,[+|-]key[,...]]
 L:显示格式说明符
 n:显示数值uid和wchan
 S:累积包括一些死子进程数据
-y:不显示标志,显示RSS(只使用-l)
-w:无限输出宽度
--help <s|l|o|t|m|a>:显示帮助

OBSOLETE 排序键

注意:--sort仅支持部分排序

【命令示例】
ps aux --sort=[排序列名]    #默认升序
ps aux --sort=+[排序列名]   #升序
ps aux --sort=-[排序列名]   #降序

【列名解释】
%cpu         cpu利用率
pcpu         cpu利用率
priority     内核调度优先级

%mem         物理内存使用率
vsize        虚拟机总大小(KB)
rss          常驻集大小
resident     居民页面
size         内存大小(单位:千字节)
share        页面的共享量  

user         用户名
cutime       用户累计时间
cstime       系统累计时间
utime        用户时间
start_time   启动时间进程

session      会话ID
pid          进程ID
ppid         父进程ID
uid          用户标识号
pgrp         进程组ID
tpgid        控制tty进程组ID

min_flt      页面轻微故障个数
maj_flt      页面重大错误个数
cmin_flt     累积页面次要故障
cmaj_flt     累积重大页面故障

cmd          可执行文件的简单名称
flags        表示长格式的f字段
tty          控制tty的设备号

2. 推荐用法

2.1. 标准语法

ps -e
ps -ef
ps -eF
ps -ely

PID  :进程ID
PPID :父进程ID
PRI  :流程的优先级。数字越高,优先级越低
NI   :nice值,-20到19(负数表示优先级高,正数表示优先级低)
PSR  :进程当前被分配给的处理器
RSS  :常驻集大小,任务使用的非交换物理内存(单位:千字节)
C    :处理器利用率
TIME :累积CPU时间,用户+系统
CMD  :命令
S    :最小状态显示(一个字符)
SZ   :大小在物理页面的核心映像进程中
TTY  :控制tty(终端)
WCHAN:进程处于休眠状态的内核函数名称,如果进程正在运行,则用“-”;如果进程处于休眠状态,则用“*”

2.2. BSD语法

ps ax
ps axu

USER   :当前进程所属用户
PID    :进程ID
%CPU   :进程自最近一次刷新以来所占用的CPU时间和总时间的百分比
%MEM   :进程使用内存的百分比
VSZ    :进程使用的虚拟内存大小(单位:KB)
RSS    :驻留空间的大小(单位:KB)
TTY    :进程相关的终端
START  :进程启动日期(若当天启动则显示时间)
TIME   :进程使用的总CPU时间
COMMAND:被执行的命令行
STAT   :进程状态(
            D:不间断睡眠(通常是IO)
            R:正在运行或可运行(在运行队列上)
            S:可中断睡眠(等待事件完成)
            T:被作业控制信号停止
            t:在跟踪期间被调试器停止
            Z:僵尸进程(被父进程终止但未被收割)
            W:进入内存交换(从内核2.6开始无效)
            X:死掉的进程

        BSD格式额外的字符:
            <:高优先级(对其他用户不好)
            N:低优先级(对其他用户友好)
            L:将页面锁定在内存中(用于实时和自定义IO)
            s:是会话领导者
            l:是多线程的(使用CLONE_THREAD,像NPTL pthreads一样)
            +:在前台进程组中
        )

2.3. 打印进程树

ps -ejH
ps axjf

 

PID    :进程ID
PPID   :父进程ID
SID    :会话ID
STAT   :多字符进程状态
TIME   :累积CPU时间,用户+系统
CMD    :命令
COMMAND:被执行的命令行
TTY    :控制tty(终端)
PGID   :进程组ID或进程组组长的进程ID
TPGID  :进程所连接的tty(终端)上的前台进程组ID,如果进程为-1,则为-1

2.4. 获取有关线程的信息

ps -eLf
ps axms

PID    :进程ID
PPID   :父进程ID
C      :处理器利用率
TIME   :累积CPU时间,用户+系统
LWP    :轻量级进程(线程)可调度实体的ID(别名spid, tid)
NLWP   :进程中的LWPS(线程)数
CMD    :命令
COMMAND:命令名称(仅为可执行名称)
CAUGHT :捕获信号的掩码
BLOCKED:阻塞信号的掩码
IGNORED:忽略信号的掩码
PENDING:挂起信号的掩码
TTY    :控制tty(终端)
STAT   :多字符进程状态(
          <:高优先级(对其他用户不好)
          N:低优先级(对其他用户友好)
          L:将页面锁定在内存中(用于实时和自定义IO)
          s:是会话领导者
          l:是多线程的(使用CLONE_THREAD,像NPTL pthreads一样)
          +:在前台进程组中
        )

2.5. 获取安全信息

ps -eo euser,ruser,suser,fuser,f,label,args
ps axZ
ps -eM

PID    :进程ID
EUSER  :生效用户名
RUSER  :真实用户ID
SUSER  :保存的用户名
FUSER  :文件系统访问用户ID
F      :与进程关联的标志
TIME   :累积CPU时间,用户+系统
CMD    :命令
COMMAND:进程命令+参数
LABEL  :安全标签,最常用于SELinux上下文数据
TTY    :控制tty(终端)
STAT   :多字符进程状态

2.6. 自定义输出格式

ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm
ps axo stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm
ps -Ao pid,tt,user,fname,tmout,f,wchan

【代码】    【显示头】   【解释说明】
args        COMMAND     进程命令+参数
bsdstart    START       命令启动的时间
start_time  START       流程的开始时间或日期
start       STARTED     命令开始执行的时间
etime       ELAPSED     自进程启动以来经过的时间
cmd         CMD         命令
comm        COMMAND     命令名称(仅为可执行名称)


%cpu        %CPU        进程的cpu使用率
pcpu        %CPU        进程的cpu使用率
cputime     TIME        累积CPU时间,用户+系统
time        TIME        累积CPU时间,用户+系统
nlwp        NLWP        进程中的LWPS(线程)数
c           C           处理器利用率
class       CLS         进程的调度类
cp          CP          每单位(百分之十)CPU使用率


f           F           与进程关联的标志
thcount     THCNT       进程拥有的内核线程数
sched       SCH         进程调度策略(SCHED_OTHER (SCHED_NORMAL)、SCHED_FIFO、SCHED_RRSCHED_BATCH、“SCHED_ISO”、“SCHED_IDLE”和“SCHED_DEADLINE”分别显示为0、1、2、3、4、5和6)
lsession    SESSION     进程的登录会话标识符
tgid        TGID        表示任务所属的线程组的数字
thcgr       THCGR       显示线程所属的控制组
unit        UNIT        显示进程所属的单元
psr         PSR         进程当前被分配给的处理器
sgi_p       P           进程当前正在其上执行的处理器。如果进程当前未运行,则显示 *
slice       SLICE       显示进程所属的片单元
stat        STAT        多字符进程状态
policy      POL         进程的调度类
                            -   没有报告
                            TS  SCHED_OTHER
                            FF  SCHED_FIFO
                            RR  SCHED_RR
                            B   SCHED_BATCH
                            ISO SCHED_ISO
                            IDL SCHED_IDLE
                            DLN SCHED_DEADLINE
                            ?   未知价值


%mem        %MEM        进程的常驻集大小与机器上物理内存的mem之比,以百分比表示
pmem        %MEM        进程的常驻集大小与机器上物理内存的mem之比,以百分比表示
size        SIZE        如果进程对所有可写页面进行脏化,然后再进行脏化,则大约需要多少交换空间换出(这个数字非常粗略)
rss         RSS         常驻集大小,任务使用的非交换物理内存(单位:千字节)
sz          SZ         大小在物理页面的核心映像进程中。这包括文本、数据和堆栈空间。设备映射目前被排除在外;这是有可能改变的
trs         TRS         文本常驻集大小,即用于可执行代码的物理内存量
vsz         VSZ         进程的虚拟内存大小(1024字节为单位),目前不包括设备映射
drs         DRS         数据驻留集大小,即用于除可执行代码以外的物理内存的数量
maj_flt     MAJFLT      此进程中发生的主要页面错误的数目
min_flt     MINFLT      此进程中发生的主要页面错误的数目


ni          NI          nice值,-20到19(负数表示优先级高,正数表示优先级低)
nice        NI          nice值,-20到19(负数表示优先级高,正数表示优先级低)
nwchan      WCHAN       进程处于睡眠状态的内核函数的地址(如果需要内核函数名,请使用wchan)
s           S           最小状态显示(一个字符)
pri         PRI         流程的优先级。数字越高,优先级越低。
rtprio      RTPRIO      实时优先级
wchan       WCHAN       进程处于休眠状态的内核函数名称,如果进程正在运行,则用“-”;如果进程处于休眠状态,则用“*”。进程是多线程的,ps不显示线程


euser       EUSER       生效用户名
suser       SUSER       保存的用户名
cgroup      CGROUP      显示进程所属的控制组
ouid        OWNER       进程会话所有者的Unix用户标识符
rgroup      RGROUP      真实组名
sgroup      SGROUP      保存的组名
supgrp      SUPGRP      补充组的组名
uunit       UUNIT       显示进程所属的用户单元
group       GROUP       egroup


pid         PID         进程ID
ppid        PPID        父进程ID
sid         SID         会话ID
sess        SESS        会话ID或会话领导者的进程ID
luid        LUID        显示与进程关联的登录ID
euid        EUID        有效的用户ID
ruid        RUID        真实用户ID
ruser       RUSER       真实用户ID
suid        SUID        保存的用户ID(alias svuid)
rgid        RGID        真实组ID
pgid        PGID        进程组ID或进程组组长的进程ID
egid        EGID        进程的有效组ID号
egroup      EGROUP      进程的有效组ID
sgid        SGID        保存的组ID
supgid      SUPGID      补充组的组id
fgid        FGID        文件系统访问组ID
fgroup      FGROUP      文件系统访问组ID
fuid        FUID        文件系统访问用户ID
fuser       FUSER       文件系统访问用户ID
lwp         LWP         轻量级进程(线程)可调度实体的ID(别名spid, tid)
tid         TID         表示可调度实体的唯一编号
ipcns       IPCNS       描述进程所属命名空间的唯一inode号
mntns       MNTNS       描述进程所属命名空间的唯一inode号
netns       NETNS       描述进程所属命名空间的唯一inode号
pidns       PIDNS       描述进程所属命名空间的唯一inode号
userns      USERNS      描述进程所属命名空间的唯一inode号
utsns       UTSNS       描述进程所属命名空间的唯一inode号
gid         GID         egid
pgrp        PGRP        pgid


blocked     BLOCKED     阻塞信号的掩码(根据字段的宽度,用16进制表示32位或64位掩码显示格式)
caught      CAUGHT      捕获信号的掩码
ignored     IGNORED     忽略信号的掩码
pending     PENDING     挂起信号的掩码
seat        SEAT        与分配给特定工作场所的所有硬件设备相关联的标识符


eip         EIP         指令指针
esp         ESP         堆栈指针
stackp      STACKP      进程堆栈底部(开始)的地址


tpgid       TPGID       进程所连接的tty(终端)上的前台进程组ID,如果进程为-1,则为-1
tt          TT          控制tty(终端)
tty         TT          控制终端
tname       TTY         控制tty(终端)
label       LABEL       安全标签,最常用于SELinux上下文数据
machine     MACHINE     分配给VM或容器的进程的机器名


sig         PENDING     see pending.  (alias pending, sig_pend).
sigcatch    CAUGHT      see caught.  (alias caught, sig_catch).
sigignore   IGNORED     see ignored.  (alias ignored, sig_ignore).
sigmask     BLOCKED     see blocked.  (alias blocked, sig_block).
spid        SPID        see lwp.  (alias lwp, tid).
svgid       SVGID       see sgid.  (alias sgid). 
svuid       SVUID       see suid.  (alias suid). 
ucmd        CMD         see comm.  (alias comm, ucomm).
ucomm       COMMAND     see comm.  (alias comm, ucmd). 
uid         UID         see euid.  (alias euid). 
user        USER        see euser.  (alias euser, uname).

3. 指定用户

3.1. 指定单个/多个用户

ps u -U root,yt,xxx

3.2. 查看当前用户下进程 

ps xl

4. 排序查询 

ps aux --sort=[排序列名]    #默认升序
ps aux --sort=+[排序列名]   #升序
ps aux --sort=-[排序列名]   #降序

4.1. 按cpu使用率排序

ps aux --sort=-%cpu

4.2. 按物理内存使用率排序

ps aux --sort=-%mem

4.3. 按虚拟内存使用排序

ps aux --sort=-vsiz

5. 字段说明

5.1. OS命令类

COMMAND     进程命令+参数
START       命令启动的时间
START       流程的开始时间或日期
STARTED     命令开始执行的时间
ELAPSED     自进程启动以来经过的时间
CMD         命令
COMMAND     命令名称(仅为可执行名称)

5.2. CPU类

%CPU        进程的cpu使用率
%CPU        进程的cpu使用率
TIME        累积CPU时间,用户+系统
TIME        累积CPU时间,用户+系统
NLWP        进程中的LWPS(线程)数
C           处理器利用率
CP          每单位(百分之十)CPU使用率

5.3. 进程类

F           与进程关联的标志(1分叉,但没有执行,4使用超级用户权限)
THCNT       进程拥有的内核线程数
SCH         进程调度策略(SCHED_OTHER (SCHED_NORMAL)、SCHED_FIFO、SCHED_RRSCHED_BATCH、“SCHED_ISO”、“SCHED_IDLE”和“SCHED_DEADLINE”分别显示为0、1、2、3、4、5和6)
SESSION     进程的登录会话标识符
TGID        表示任务所属的线程组的数字
THCGR       显示线程所属的控制组
UNIT        显示进程所属的单元
PSR         进程当前被分配给的处理器
P           进程当前正在其上执行的处理器。如果进程当前未运行,则显示 *
SLICE       显示进程所属的片单元
STAT        多字符进程状态
POL         进程的调度类(
                -   没有报告
                TS  SCHED_OTHER
                FF  SCHED_FIFO
                RR  SCHED_RR
                B   SCHED_BATCH
                ISO SCHED_ISO
                IDL SCHED_IDLE
                DLN SCHED_DEADLINE
                ?   未知价值
            )
CLS         进程的调度类(
                TS  固定播送时间其他                
                FF  SCHED_FIFO                      
                RR  SCHED_RR                        
                B   SCHED_BATCH                     
                ISO SCHED_ISO                       
                IDL SCHED_IDLE                      
                DLN SCHED_DEADLINE                  
                ?   unknown value
	        )

5.4. 内存类

%MEM        进程的常驻集大小与机器上物理内存的mem之比,以百分比表示
%MEM        进程的常驻集大小与机器上物理内存的mem之比,以百分比表示
SIZE        如果进程对所有可写页面进行脏化,然后再进行脏化,则大约需要多少交换空间换出(这个数字非常粗略)
RSS         常驻集大小,任务使用的非交换物理内存(单位:千字节)
SZ          大小在物理页面的核心映像进程中。这包括文本、数据和堆栈空间。设备映射目前被排除在外;这是有可能改变的
TRS         文本常驻集大小,即用于可执行代码的物理内存量
VSZ         进程的虚拟内存大小(1024字节为单位),目前不包括设备映射
DRS         数据驻留集大小,即用于除可执行代码以外的物理内存的数量
MAJFLT      此进程中发生的主要页面错误的数目
MINFLT      此进程中发生的主要页面错误的数目

5.5. 优先级类

NI          nice值,-20到19(负数表示优先级高,正数表示优先级低)
WCHAN       进程处于睡眠状态的内核函数的地址(如果需要内核函数名,请使用wchan)
S           最小状态显示(一个字符)
PRI         流程的优先级。数字越高,优先级越低
RTPRIO      实时优先级
WCHAN       进程处于休眠状态的内核函数名称,如果进程正在运行,则用“-”;如果进程处于休眠状态,则用“*”。进程是多线程的,ps不显示线程

5.6. 用户类

EUSER       生效用户名
SUSER       保存的用户名
CGROUP      显示进程所属的控制组
OWNER       进程会话所有者的Unix用户标识符
RGROUP      真实组名
SGROUP      保存的组名
SUPGRP      补充组的组名
UUNIT       显示进程所属的用户单元

5.7. ID类

PID         进程ID
PPID        父进程ID
SID         会话ID
SESS        会话ID或会话领导者的进程ID
LUID        显示与进程关联的登录ID
EUID        有效的用户ID
RUID        真实用户ID
RUSER       真实用户ID
SUID        保存的用户ID(alias svuid)
RGID        真实组ID
PGID        进程组ID或进程组组长的进程ID
EGID        进程的有效组ID号
EGROUP      进程的有效组ID
SGID        保存的组ID
SUPGID      补充组的组id
FGID        文件系统访问组ID
FGROUP      文件系统访问组ID
FUID        文件系统访问用户ID
FUSER       文件系统访问用户ID
LWP         轻量级进程(线程)可调度实体的ID(别名spid, tid)
TID         表示可调度实体的唯一编号
IPCNS       描述进程所属命名空间的唯一inode号
MNTNS       描述进程所属命名空间的唯一inode号
NETNS       描述进程所属命名空间的唯一inode号
PIDNS       描述进程所属命名空间的唯一inode号
USERNS      描述进程所属命名空间的唯一inode号
UTSNS       描述进程所属命名空间的唯一inode号

5.8. 掩码类

BLOCKED     阻塞信号的掩码(根据字段的宽度,用16进制表示32位或64位掩码显示格式)
CAUGHT      捕获信号的掩码
IGNORED     忽略信号的掩码
PENDING     挂起信号的掩码
SEAT        与分配给特定工作场所的所有硬件设备相关联的标识符

5.9. 指针类

EIP         指令指针
ESP         堆栈指针
STACKP      进程堆栈底部(开始)的地址

5.10. 终端类

TPGID       进程所连接的tty(终端)上的前台进程组ID,如果进程为-1,则为-1
TT          控制tty(终端)
TT          控制终端
TTY         控制tty(终端)
LABEL       安全标签,最常用于SELinux上下文数据
MACHINE     分配给VM或容器的进程的机器名

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

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

相关文章

ORB-SLAM2 ---- ORBmatcher::SearchForInitialization函数

目录 1.函数作用 2.执行流程 3.函数参数解析 4.code 5.函数解析 5.1 旋转直方图的构建与作用 5.2 遍历帧1中的特征点在帧2中找出候选匹配特征点 5.3 第一层筛选 -- 阈值、最优/次优比例、重复匹配 5.4 第二层筛选 -- 旋转直方图 5.5 final 将最后通过筛选的匹…

web前端课程设计——动漫网页2个网页HTML+CSS web前端开发技术 web课程设计 网页规划与设计

HTML实例网页代码, 本实例适合于初学HTML的同学。该实例里面有设置了css的样式设置&#xff0c;有div的样式格局&#xff0c;这个实例比较全面&#xff0c;有助于同学的学习,本文将介绍如何通过从头开始设计个人网站并将其转换为代码的过程来实践设计。 ⚽精彩专栏推荐&#x1…

【图】深度优先遍历 广度优先遍历

文章目录一、广度优先遍历二、深度优先遍历深度优先遍历和广度优先遍历是遍历图的两种常见方式&#xff0c;接下来就通过这两种方式来实现一下图具体遍历的过程 当我位于游乐园的景区 A 时&#xff0c;为了玩遍所有的景区我们有两种玩的方式&#xff1a; 方式一&#xff1a; …

HDLbits——移位寄存器

移位寄存器 1 4 位移位寄存器 module top_module(input clk,input areset, // async active-high reset to zeroinput load,input ena,input [3:0] data,output reg [3:0] q); always (posedge clk or posedge areset) beginif (areset)q<4h0;else if(load)q<data;els…

linux|shell脚本|有趣的知识---格式化输出日志和脚本调试方法以及kubernetes集群核心服务重启和集群证书备份脚本

前言&#xff1a; shell脚本的功能十分强大&#xff0c;这一点毋庸置疑的。那么&#xff0c;平常的工作中总是免不了和脚本打交道&#xff0c;也免不了要自己编写一些脚本。 每个人都希望自己编写的脚本强壮&#xff0c;简单&#xff0c;易用&#xff0c;功能多&#xff0c;并…

CDH中某一结点任务异常,节点服务重启失败报错:No space left on device

文章目录Error Message - 报错信息Analysis Process - 分析思路Solution - 解决方案Error Message - 报错信息 今天发现cdh集群的某一个节点任务爆红了&#xff0c;因为是测试的服务器&#xff0c;一般我都会尝试直接重启&#xff0c;但是该节点服务关闭后&#xff0c;竟然都无…

Spring Web

目录 概述 SpringMVC的组件 DispatcherServlet HandlerMapping HandlerAdapter SpringWeb的运行流程 Controller类的编写 RestController注解 RequestMapping注解 SpringWeb搭建 获取请求参数 解决POST请求中文乱码问题 Ajax返回JSON数据 跨域问题的解决 拦截器 …

LabVIEW与SQL Server 2919 Express通讯

LabVIEW与SQL Server 2919 Express通讯 ​LabVIEW与数据库通讯&#xff0c;可以使用数据库连接工具包。一般小型数据库用Access就可以了。但是对于长时间&#xff0c;需要存储空间较大的场合&#xff0c;Access一般不超过2G。这样就需要更换其他数据了。 SQL Server不同版本存…

MDC Service 基于 ESP32 推出树莓派 4 形态的 EsPiFF

当您的应用在树莓派 4 上运行不够稳定或耗电量过大时&#xff0c;您可以考虑使用 EsPiFF。这是一款由 MDC-Service 基于乐鑫 ESP32 构建的开发板。EsPiFF 配备有线和无线以太网、SD 卡插槽和 RP2040 协处理器。如果您尚未找到适合您项目的树莓派&#xff0c;不妨尝试一下这款低…

使用 Docker 来快速上手中文 Stable Diffusion 模型:太乙

本篇文章&#xff0c;我们聊聊如何使用 Docker 快速运行中文 Stable Diffusion 模型&#xff1a;太乙。 写在前面 上个月的时候&#xff0c;有朋友和我推荐了一个 “Stable Diffusion” 模型&#xff0c;来自深圳大湾区数字经济研究院(IDEA)的封神榜大模型中的 “太乙” 。 最…

web期末大作业 使用HTML+CSS制作蓝色版爱宠之家带留言板(5页)

&#x1f389;精彩专栏推荐 &#x1f4ad;文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 &#x1f482; 作者主页: 【主页——&#x1f680;获取更多优质源码】 &#x1f393; web前端期末大作业&#xff1a; 【&#x1f4da;毕设项目精品实战案例 (10…

Metal每日分享,4x4颜色矩阵滤镜效果

本案例的目的是理解如何用Metal实现图像4x4颜色矩阵效果滤镜,通过4x4矩阵对RGBA像素处理; Demo HarbethDemo地址实操代码 // 绿色通道加倍 let filter = C7ColorMatrix4x4(matrix: Matrix4x4.Color.greenDouble)// 方案1: ImageView.image = try? BoxxIO(element: originIm…

【Python开发】Flask中的单点登录解决方案

Flask中的单点登录解决方案1.SSO 和 CAS 单点登录&#xff08;Single Sign On&#xff0c;SSO&#xff09;就是通过用户的一次性鉴别登录。当用户在身份认证服务器上登录一次以后&#xff0c;即可获得访问单点登录系统中其他关联系统和应用软件的权限&#xff0c;同时这种实现…

E. DS哈希查找--Trie树

目录 题目描述 思路分析 AC代码 题目描述 Trie树又称单词查找树&#xff0c;是一种树形结构&#xff0c;如下图所示。 它是一种哈希树的变种。典型应用是用于统计&#xff0c;排序和保存大量的字符串&#xff08;但不仅限于字符串&#xff09;&#xff0c;所以经常被搜索引擎…

【经验版】Linux相关教程(二)

一、参考资料 二、常用指令 1. 安装run软件包 # 可执行权限 chmod x 软件包名.run# 校验软件包安装文件的一致性和完整性 ./软件包名.run --check# 指定安装路径 ./软件包名.run --install如果用户未指定安装路径&#xff0c;则软件会安装到默认路径下&#xff0c;默认安装路…

kafka一致性保证

1、概念 水位标记&#xff1a; 水位或水印&#xff08;watermark&#xff09;一词&#xff0c;表示位置信息&#xff0c;即位移&#xff08;offset&#xff09;。Kafka源码中使用的名字是高水位&#xff0c;HW&#xff08;high watermark&#xff09;。 副本角色&#xff1a;…

华硕编程竞赛11月JAVA专场 E题太空漫步 题解

作者主页&#xff1a;Designer 小郑 作者简介&#xff1a;Java全栈软件工程师一枚&#xff0c;来自浙江宁波&#xff0c;负责开发管理公司OA项目&#xff0c;专注软件前后端开发&#xff08;Vue、SpringBoot和微信小程序&#xff09;、系统定制、远程技术指导。CSDN学院、蓝桥云…

cleanmymac4.12最新版下载安装教程

cleanmymac2023的“智能扫描”功能略不同于两外两款软件。除垃圾扫描以外&#xff0c;它还连带有搜索mac潜在威胁以及寻找提升系统性能方案的功能。在垃圾文件分类方面&#xff0c;它将垃圾首先分为系统垃圾、iTunes垃圾、照片垃圾3大类&#xff0c;每一类再做具体细分。但这样…

AUTOSAR OTA升级

一、OTA技术概念 随着高级辅助驾驶的发展和自动驾驶的引入&#xff0c;汽车变得越来越智能&#xff0c;这些智能汽车被软件控制&#xff0c;装有巨量的软件程序&#xff0c;当出现一个软件程序问题或者更新时&#xff0c;如果 按照传统的解决方式 &#xff0c;那都将是一项很繁…

美腾科技科创板上市:预计年营收4.7亿到5.7亿 市值44亿

雷递网 雷建平 12月9日天津美腾科技股份有限公司&#xff08;简称&#xff1a;“美腾科技”&#xff0c;股票代码为&#xff1a;“688420”&#xff09;今日在科创板上市。美腾科技此次发行2211万股&#xff0c;发行价为48.96元&#xff0c;募资总额为10.83亿元。美腾科技开盘价…