Linux基础命令解释
目录
一、文件和目录操作命令
1. ls
2. cd
3. pwd
4. mkdir
5. rm
6. cp
7. mv
二、查看和编辑文件命令
1. cat
2. less
三、系统信息相关命令
四、网络相关命令
五、用户和权限管理命令
Linux是由Linus Torvalds于1991年开发的开源类Unix操作系统内核,现已成为包含内核、GNU工具链和应用程序的完整操作系统。在Linux中,命令行工具是系统管理和操作的核心。下面是一些常见且重要的Linux命令的详细解释:
一、文件和目录操作命令
1. ls
ls
是 Linux 系统中最常用的命令之一,用于列出目录内容。它能够显示文件和子目录的详细信息,并且提供了多种选项来定制输出格式。
常用选项
-l
:使用长列表格式显示文件或目录的详细信息。这包括权限、链接数、所有者、组、大小(字节)、最后修改时间以及名称。
ls -l# 例如:drwxr-xr-x. 2 用户名 组名 6 3月 28 22:25 Desktop
-a
:显示所有文件,包括以.
开头的隐藏文件。
ls -a# 例如:. .bash_history .bash_profile .cache .dbus Documents .esd_auth .ICEauthority .mozilla .mysql_history .pki
-la
或 -al
:组合使用 -l
和 -a
,显示包括隐藏文件在内的所有文件的详细信息。
ls -la# 例如:# drwx------. 16 itjiang itjiang 4096 4月 11 20:55 .# drwxr-xr-x. 3 root root 21 3月 30 14:36 ..# -rw-------. 1 itjiang itjiang 1380 4月 1 22:33 .bash_history
-h
:与 -l
一起使用时,以人类可读的方式显示文件大小(例如K, M, G代表KB, MB, GB)。
ls -lh# 例如:drwxr-xr-x. 2 itjiang itjiang 6 3月 28 22:25 Desktop
-R
:递归列出子目录中的内容。
ls -R# 例如:[itjiang@jasmine ~]$ ls -R# .:# Desktop Documents Downloads# # ./Desktop:# # ./Documents:# # ./Downloads:
2. cd
基本语法
cd [目录路径]
如果未提供任何参数,则默认行为取决于所使用的 shell。例如,在大多数情况下,不带参数执行 cd
会将我们带到用户的主目录(即 ~
)。
常用示例
-
进入指定目录:要进入某个特定目录,请输入该目录的完整或相对路径。
cd /path/to/directory# [itjiang@jasmine /]$ cd /home/itjiang/Desktop# [itjiang@jasmine Desktop]$
或者,如果我们已经在 /path/to/
目录下,可以直接使用相对路径:
cd directory# [itjiang@jasmine ~]$ cd Desktop# [itjiang@jasmine Desktop]$
-
返回用户主目录:直接输入
cd
或者cd ~
可以回到用户的主目录。 -
返回上一级目录:使用
cd ..
来移动到当前目录的上一级目录。 - 返回前一个工作目录:使用
-
参数可以快速返回到之前的工作目录。
特殊符号
-
~
:代表当前用户的主目录。 -
.
:表示当前目录。 -
..
:表示当前目录的父目录。
3. pwd
pwd 是 "print working directory" 的缩写,是 Linux 系统中的一个基本命令。它用于显示当前终端会话所在的完整路径(即当前工作目录的绝对路径)。无论我们在文件系统的哪个位置,使用 pwd 命令都可以让我们知道自己的确切位置。
基本用法
只需在命令行中输入 pwd 并按下回车键,执行后,该命令将输出当前工作目录的完整路径。
pwd# 例如:# [itjiang@jasmine ~]$ pwd# /home/itjiang
工作原理
绝对路径:pwd 输出的是从根目录 / 开始到当前所在目录的完整路径。
符号链接处理:
-
默认情况下,如果当前目录是一个符号链接(快捷方式),pwd 会显示实际的工作路径,而不是符号链接指向的路径。
-
使用 -P 参数可以强制 pwd 显示物理路径而非逻辑路径(即跟随符号链接到达的实际目录)。
pwd -P
-
相反地,使用 -L 参数可以让 pwd 显示逻辑路径(符号链接本身)。
pwd -L
4. mkdir
mkdir 是 "make directory" 的缩写,是 Linux 系统中用于创建新目录(文件夹)的命令。它是一个非常基础但重要的命令,对于管理和组织文件系统中的数据至关重要。
基本语法
mkdir [选项] 目录名...
可以同时创建一个或多个目录。如果尝试创建的目录已经存在,mkdir 默认情况下会报错,除非使用了特定选项来改变这种行为。
常用选项
-
无选项:最基本的用法,直接指定要创建的目录名称。
mkdir new_directory
-
-p 或 --parents:递归创建所需的父目录(如果它们不存在)。这对于创建深层嵌套的目录结构特别有用,因为它避免了必须手动创建每个级别的目录。
mkdir -p path/to/new/directory
如果路径中的任何父目录不存在,此命令将自动创建它们。
-
-m 或 --mode:设置新建目录的权限模式。默认情况下,新目录的权限由用户的 umask 决定,但是我们可以使用 -m 来覆盖这一行为。
mkdir -m 755 new_directory
上述命令创建了一个权限为 rwxr-xr-x(755) 的目录。
示例
-
创建单个目录:
mkdir projects
-
创建多个目录:
mkdir documents downloads music
-
递归创建目录:
mkdir -p project_1/sub_project/data
这条命令不仅创建了 project_1 目录,还在其中创建了 sub_project 和 data 子目录。
-
创建目录并设定权限:
mkdir -m 700 private_folder
创建一个只有所有者可读、写和执行的私有目录。
5. rm
rm
是 "remove" 的缩写,是 Linux 系统中用于删除文件或目录的命令。它是一个功能强大但需要谨慎使用的命令,因为一旦文件或目录被删除,通常无法恢复(除非使用专门的数据恢复工具)。
基本语法
rm [选项] 文件名...
rm
可以用来删除一个或多个文件,或者通过特定选项删除目录。
常用选项
- 无选项:直接删除指定的文件。
rm file.txt
-r
或--recursive
:递归删除目录及其内容。如果要删除一个非空目录,必须使用此选项。
rm -r directory_name
-f
或--force
:强制删除文件或目录,不提示任何确认信息。即使文件不存在也不会报错。
rm -f file.txt
-i
:交互模式,在删除每个文件之前提示用户确认。
rm -i file.txt
输出示例:
rm: remove regular file 'file.txt'? y
-v
或--verbose
:显示详细的删除过程。
rm -v file.txt
输出示例:
removed 'file.txt'
-rf
或-fr
:这是rm
最常用的组合之一,表示递归且强制删除目录及其所有内容,不会提示确认。
rm -rf directory_name
注意:此命令非常危险!误用可能导致重要数据丢失,请务必小心。
6. cp
cp
命令在 Linux 系统中用于复制文件或目录。它是日常操作中非常基础且重要的命令之一,允许用户将一个或多个文件或目录复制到另一个位置。
基本语法
cp [选项] 源文件 目标文件cp [选项] 源文件... 目录
“源文件”指的是我们想要复制的文件或目录,“目标文件”则是指复制后的新文件或目录的位置和名称。
常用选项
- 无选项:最基本的用法,复制单个文件到指定位置。
cp file.txt /path/to/directory/
-i
或--interactive
:在覆盖已存在文件前提示确认。
cp -i file.txt /path/to/directory/
-r
或-R
或--recursive
:递归地复制目录及其内容(包括子目录和文件)。
cp -r directory/ /path/to/new_directory/
-p
或--preserve
:保留文件的属性(如时间戳、模式、所有权等)。默认情况下会保存修改时间和访问时间。
cp -p file.txt /path/to/directory/
-v
或--verbose
:显示详细的处理过程信息。
cp -v file.txt /path/to/directory/
-f
或--force
:若目标文件无法打开,则删除它并尝试再次复制。
cp -f file.txt /path/to/directory/
-u
或--update
:仅当源文件比目标文件新或目标文件不存在时才进行复制。
cp -u file.txt /path/to/directory/
7. mv
mv
命令在 Linux 系统中用于移动文件或目录,也可以用来重命名文件或目录。它是一个非常基础且重要的命令,适用于文件和目录的管理操作。
基本语法
mv [选项] 源文件 目标文件mv [选项] 源文件... 目录
“源文件”指的是我们想要移动或重命名的文件或目录,“目标文件”则是指移动后的新位置或重命名后的名称。
常用选项
- 无选项:最基本的用法,用于移动文件或重命名。
mv oldname.txt newname.txt # 重命名mv file.txt /path/to/directory/ # 移动文件到指定目录
-i
或--interactive
:在覆盖已存在文件前提示确认。
mv -i file.txt /path/to/directory/
-f
或--force
:如果目标文件无法打开,则删除它并尝试再次移动(强制覆盖)。
mv -f file.txt /path/to/directory/
-n
或--no-clobber
:不要覆盖已存在的文件。
mv -n file.txt /path/to/directory/
-v
或--verbose
:显示详细的处理过程信息。
mv -v file.txt /path/to/directory/
-u
或--update
:仅当源文件比目标文件新或目标文件不存在时才进行移动。
mv -u file.txt /path/to/directory/
二、查看和编辑文件命令
1. cat
cat
是 "concatenate" 的缩写,是 Linux 系统中用于查看、创建或合并文件内容的命令。它是一个非常基础且多功能的工具,常用于快速查看文件内容或将多个文件的内容输出到标准输出(通常是终端)。
基本语法
cat [选项] 文件名...
常用功能
- 查看文件内容: 使用
cat
可以快速查看文本文件的内容。
cat file.txt
- 合并多个文件: 将多个文件的内容连接在一起并输出到标准输出。
cat file1.txt file2.txt > combined.txt
这会将 file1.txt
和 file2.txt
的内容合并,并保存到 combined.txt
中。
- 创建文件: 使用重定向符号
>
或>>
可以通过cat
创建新文件或追加内容。
1. 创建新文件:
cat > new_file.txt
输入内容后按 Ctrl+D
保存退出。
2. 追加内容到现有文件:
cat >> existing_file.txt
- 复制文件内容: 使用重定向可以将一个文件的内容复制到另一个文件。
cat source.txt > destination.txt
- 显示行号: 使用
-n
选项为每一行添加行号。
cat -n file.txt
- 显示非空行的行号: 使用
-b
选项只为非空行添加行号。
cat -b file.txt
- 显示特殊字符: 使用
-A
选项显示文件中的特殊字符(如换行符\n
显示为$
,制表符\t
显示为^I
)。
cat -A file.txt
- 压缩空白行: 使用
-s
选项可以压缩连续的空白行,使其只显示一行空白。
cat -s file.txt
2. less
less
是一个在 Linux 系统中用于查看文本文件内容的命令行工具。与 cat
不同,less
允许用户分页查看文件,这意味着你可以逐屏浏览大型文件,而不需要一次性将整个文件的内容输出到终端。此外,less
还支持向前和向后滚动、搜索文本等功能,使其成为处理大型日志文件或程序输出的理想选择。
基本语法
less [选项] 文件名...
主要功能及特点
-
分页显示:
less
以分页的形式显示文件内容,允许用户通过上下箭头键或者空格键(向前翻页)和b
键(向后翻页)来浏览文件。 -
双向滚动:不仅可以向下滚动,还可以向上滚动查看之前的内容。
-
搜索功能:可以使用
/
后跟关键词进行向前搜索,使用?
加关键词进行向后搜索。按n
查找下一个匹配项,N
查找上一个匹配项。 -
标记位置:可以使用
m
后跟任意字母来标记当前位置,之后可以通过'
后跟相同的字母快速跳转到该位置。 -
退出查看:在
less
中,按下q
可以退出查看模式返回到命令行。
常用选项
-N
:显示每行的行号。
less -N file.txt
-S
或--chop-long-lines
:当一行过长时,不换行显示而是裁剪超出屏幕宽度的部分,可以通过左右箭头查看完整行内容。
less -S file.txt
-i
:忽略大小写进行搜索(除非搜索串包含大写字母)。
less -i file.txt
-F
:如果文件内容能一屏显示完,则直接退出并显示文件内容;否则进入less
的交互模式。
less -F file.txt
-X
:禁用发送终端初始化和结束字符串,这可能有助于避免清除屏幕上的内容。
less -X file.txt
三、系统信息相关命令
top
或 htop
(如果已安装):实时显示系统的进程和资源使用情况。
df
:报告文件系统的磁盘空间使用情况。
-
-h
:以人类可读的形式显示大小(如KB, MB, GB)。
du
:估算文件空间使用情况。
-
-h
:同上,以更易读的方式显示大小。 -
-s
:总结每个参数所占的总块数。
四、网络相关命令
ping
:测试网络连接。
-
ping hostname_or_ip
:发送ICMP ECHO_REQUEST包到网络主机。
ifconfig
或 ip
:配置网络接口。
-
ip addr show
:显示网络接口的IP地址信息。
netstat
:显示网络连接、路由表、接口统计信息等。
-
-tuln
:显示所有监听的TCP端口。
五、用户和权限管理命令
useradd
, userdel
:添加或删除用户。
passwd
:更改用户密码。
sudo
:以另一个用户的身份执行程序,默认为root用户。
相关文章:
Linux基础命令解释
目录 一、文件和目录操作命令 1. ls 2. cd 3. pwd 4. mkdir 5. rm 6. cp 7. mv 二、查看和编辑文件命令 1. cat 2. less 三、系统信息相关命令 四、网络相关命令 五、用户和权限管理命令 Linux是由Linus Torvalds于1991年开发的开源类Unix操作系统内核࿰…...
vue2基于video.js,v8.21.0自己设计一个视频播放器
刚开始在网上下了点视频教程想着用些电脑自带的播放器。后来级数太多了,操作不方便。就开始自己捣鼓了。 痛点是是视频教程本身带来的,不方便反复的找重点。过去了不好快退等。 就基于video.js,设计了各种功能,鼠标移到上方显示 播放、暂停…...
Spring Boot 中集成 Disruptor_高性能事件处理框架
1. 引言 1.1 什么是 Disruptor Disruptor 是一个高性能的事件处理框架,广泛应用于金融交易系统、日志记录、消息队列等领域。它通过无锁机制和环形缓冲区(Ring Buffer)实现高效的事件处理,具有极低的延迟和高吞吐量的特点。 1.2 为什么使用 Disruptor 高性能:通过无锁机…...
如何关闭MacOS中鼠标滚轮滚动加速
一、背景 想要关闭滚轮的 “滚动加速”,即希望滚动了多少就对应滚动页面固定行数,现在macOS是加速滚动的,即滚动相同的角度会根据你滚动滚轮的速度不同最终页面滚动的幅度不同。这点很烦,常导致很难定位。 macOS本身的设置是没有…...
QT Sqlite数据库-教程001 创建数据库和表-下
【1】创建带名称的数据库 #include <QtSql/QSqlDatabase> #include <QtSql/QSqlQuery> #include <QtSql/QSqlRecord> QString path QDir::currentPath(); QApplication::addLibraryPath(pathQString("/release/plugins")); QPluginLoader loader…...
玄机靶场-webshell查杀WP
0x01.黑客webshell里面的flag flag{xxxxx-xxxx-xxxx-xxxx-xxxx} 方法一 先去网站根目录找/var/www/html在文件中寻找 flag 方法二 直接使用工具 D 盾。 0x02黑客使用的什么工具的shell 把代码直接复制网上搜索即可。 https://github.com/BeichenDream/Godzilla 0x03 黑客隐…...
游戏引擎学习第217天
运行游戏并在 FreeVariableGroup 中遇到我们的断言 其实在美国,某些特定的小糖果(例如小糖蛋)只在圣诞节和复活节期间出售,导致有些人像我一样在这段时间吃得过多,进而增加体重。虽然这种情况每年都会发生,…...
13、nRF52xx蓝牙学习(GPIOTE组件方式的任务配置)
下面再来探讨下驱动库如何实现任务的配置,驱动库的实现步骤应该和寄存器方式对应,关 键点就是如何调用驱动库的函数。 本例里同样的对比寄存器方式编写两路的 GPOITE 任务输出,一路配置为输出翻转,一路设 置为输出低电平。和 …...
基础数学:线性代数与优化理论
本篇文章简单带您复习线性代数与优化理论(主要是我发表的文章中涉及过的或相关联的) 微积分和概率与统计由此进:基础数学:微积分和概率与统计-CSDN博客 二、线性代数 1.矩阵运算 (1) 基础操作与几何意义 矩阵乘法࿱…...
IBM Rational Software Architect安装感受及使用初体验
1 安装感受 最近准备用UML 2.0绘制模型图。在读UML创始人之一Grady Booch写的书《Object-Oriented Analysis and Design with Applications》(第3版)1时,发现书中用的UML工具之一为IBM Rational Software Architect(RSAÿ…...
在WPS中通过JavaScript宏(JSA)调用DeepSeek官网API优化文档教程
在WPS中通过JavaScript宏(JSA)调用DeepSeek官网API优化文档教程 一、获取DeepSeek API密钥 访问DeepSeek官网,在开发者中心创建应用并生成API Key。注意选择deepseek - chat或deepseek - v3模型,推荐后者支持长文本生成。具体步…...
2025-Gateway架构
文章目录 1. **Spring Cloud Gateway**🧠 **简介**:✅ **主要特性**:⚙️ **使用场景**: 2. **Kong Gateway**🧠 **简介**:✅ **主要特性**:⚙️ **使用场景**: 3. **Zuul (Netflix)…...
Android HWComposer代码分析
厂家应该根据自己的硬件去写HWC的代码,一般位于hardware/厂家名称/hwcomposer目录中。 1 HAL_MODULE_INFO_SYM 在 Android 中,HAL_MODULE_INFO_SYM 结构体用于描述硬件抽象层(HAL)模块的信息,它会在系统启动过程中被…...
Java微服务分布式事务:CAP定理、BASE理论与事务模式全解析
在当今复杂的分布式系统中,数据一致性始终是架构师面临的核心挑战。本文将深入探讨分布式领域的三大基石理论(CAP/BASE),并详解微服务场景下的五种主流事务解决方案,通过真实代码示例揭示技术实现本质。 一、分布式系统…...
多坐标系变换全解析:从相机到WGS-84的空间坐标系详解
多坐标系变换全解析:从相机到WGS-84的空间坐标系详解 一、常见坐标系简介二、各坐标系的功能和使用场景1. WGS-84 大地坐标系(经纬高)2. 地心直角坐标系(ECEF)3. 本地 ENU / NED 坐标系4. 平台坐标系(Body)5. 相机坐标系三、坐标变换流程图四、如何选用合适的坐标系?五…...
【微服务治理】Opentelemetry、 Jaeger、Prometheus、grafana 关系?各自作用?最佳实践?
OpenTelemetry、Jaeger、Prometheus 和 Grafana 是云原生可观测性领域的核心工具组,各自解决不同维度的问题,又能协作形成完整的监控体系。以下是它们的详细关系和功能说明: 1. OpenTelemetry 定位:统一的遥测数据标准࿰…...
谷歌25年春季新课:15小时速成机器学习
谷歌说15小时就能入门机器学习,虽然听上去有点离谱,但看了一下课程设置其实是很合理而且全面的,而且谷歌的质量还是很有保障,很适合零基础的小白以及想要进阶的学习者。🚀 基础知识部分包括 线性回归:用于…...
【笔试强训day16】
目录 第一题:字符串替换 描述 输入: 返回值: 第二题:神奇数 输入描述: 输出描述: 输入 输出 第三题:DNA序列 描述 输入描述: 输出描述: 输入: 输出: 输入…...
[每周一更]-(第139期):从FRP认识内网穿透及反向代理
文章目录 **一、FRP的核心功能与实战应用****1. 远程访问场景****2. Web服务暴露**Web服务访问实际案例:**3. 物联网与设备管理****4. 高级功能** **二、FRP性能优化与安全加固****三、同类工具对比与选型建议****四、总结与选型建议****特殊场景解决方案****1. 跨国…...
vue2使用ezuikit-js播放萤石视频
需求:需要在大屏上播放萤石视频,用到官方的ezuikit-js插件实现,并实现视频播放切换功能。有个问题至今没有解决,就是萤石视频的宽高是固定的,不会根据大屏缩放进行自适应。我这边做了简单的刷新自适应。 1.下载ezuikit…...
Nacos服务发现和配置管理
目录 一、Nacos概述 1. Nacos 简介 2. Nacos 特性 2.1 服务发现与健康监测 2.2 动态配置管理 2.3 动态DNS服务 2.4 其他关键特性 二、 服务注册和发现 2.1 核心概念 2.2 Nacos注册中心 2.3 Nacos单机模式 2.4 案例——服务注册与发现 2.4.1 父工程 2.4.2 order-p…...
DeepSeek实战:如何用AI工具提升销售转化率?
销售行业正在经历一场前所未有的变革,AI技术的快速发展让传统销售模式面临巨大挑战。如今,像DeepSeek这样的智能工具已经能高效完成客户触达、需求分析、快速回复等基础销售工作,甚至比人类更快、更精准。许多公司已经发现,AI销售…...
无锡无人机培训学校哪家好?
无锡无人机培训学校哪家好?近年来,无人机技术在各个领域的应用越来越广泛,从农业、物流到影视制作,无人机已经成为了许多行业不可或缺的工具。这种趋势促使越来越多的人希望通过系统的培训获得无人机驾驶技能。然而,在…...
从数据格式转换的角度 flink cdc 如何写入paimon?
从数据格式转换的角度 flink cdc 如何同步数据,写入paimon? 从一个测试用例着手 org/apache/flink/cdc/connectors/paimon/sink/v2/PaimonSinkITCase.java public void testSinkWithDataChange(String metastore, boolean enableDeleteVector)throws …...
Flink的 RecordWriter 数据通道 详解
本文从基础原理到代码层面逐步解释 Flink 的RecordWriter 数据通道,尽量让初学者也能理解。 1. 什么是 RecordWriter? 通俗理解 RecordWriter 是 Flink 中负责将数据从一个任务(Task)发送到下游任务的组件。想象一下,…...
从keys到SCAN:Redis批量删除的进化之路
标签:Redis、批量删除、前缀匹配、性能优化 一、痛点分析:为什么需要批量删除指定前缀的键? 在 Redis 使用过程中,我们经常会遇到这样的场景: 需要对某一类数据进行清理,例如用户会话、缓存数据等,而这些数据通常以某种前缀命名(如 user:session:*、cache:data:*)。如…...
uniapp实现目录树效果,异步加载数据
uniapp目录树 父组件调用目录树组件 <DaTreeVue2:data"treeData":field"{label: name,key: id,}"change"handleTreeChange":defaultCheckedKeys"addressDefaultCheckedKey":defaultExpandedKeys"addressDefaultCheckedKey&qu…...
机器学习--网格搜索
引言 在机器学习的广袤世界里,构建一个性能卓越的模型是众多从业者不懈追求的目标。而模型性能的好坏,很大程度上依赖于超参数的设置。今天,我们就来深入探讨一种常用且有效的超参数调优方法 —— 网格搜索。 一、什么是网格搜索 网格搜索…...
Asp.NET Core WebApi 创建带鉴权机制的Api
构建一个包含 JWT(JSON Web Token)鉴权的 Web API 是一种常见的做法,用于保护 API 端点并验证用户身份。以下是一个基于 ASP.NET Core 的完整示例,展示如何实现 JWT 鉴权。 1. 创建 ASP.NET Core Web API 项目 使用 .NET CLI 或 …...
同步电路与异步电路详解
一、基本概念与核心区别 特性同步电路异步电路时钟依赖依赖全局时钟信号(如CLK)统一触发所有操作无全局时钟,依赖事件(如信号跳变)或握手协议时序控制所有操作在时钟边沿(上升/下降沿)同步执行…...
Vccaux_IO在DDR3接口中的作用
一、Vccaux_IO在DDR3接口中的作用 1.vccaux_io通常为FPGA的IO bank的辅助电源,用于支持特定电压的IO标准 2.在DDR3接口中,FPGA的IO bank需要DDR3芯片的电压(1.5v/1.35v)匹配 3.Vccaux_IO用于为FPGA的DDR3接口I/O Bank供电,其电压值、噪声和稳…...
5分钟读懂ArgoCD:在Kubernetes中实现持续部署
Kubernetes中的Argo CD介绍 Argo CD是用于Kubernetes的声明式GitOps持续交付工具。它遵循GitOps模式,以Git仓库作为定义所需应用程序状态的唯一真实来源,能在指定的目标环境中自动部署应用程序,并持续监控应用程序的运行状态,确保…...
Redis与Caffeine的结合使用详解(高效的二级缓存解决方案)
目录 一、Redis与Caffeine的结合使用(一)引入依赖(二)配置缓存(三)配置 Caffeine 缓存(四)配置 Redis 缓存(五)使用缓存 二、总结 一、Redis与Caffeine的结合…...
leetcode 322. Coin Change
这道题也是完全背包问题。注意与第518题和第377题对比。 这道题要求的是最少可以用多少个物品装满背包,不关心所选物品的组合方式和排列方式。因此,外层循环既可以是对物品的遍历,也可以是对容量的遍历。 第518题,要求的是装满背…...
mac|使用scrcpy实现无线Android投屏
scrcpy是一个开源项目,从项目的releases可以得知它适用于windows、linux、mac github:https://github.com/Genymobile/scrcpy/releases github中提供了应用于mac系统的静态版本(也就是上图的scrcpy-macos-aarch64-v3.1.tar.gz和scrcpy-macos…...
2025年04月11日Github流行趋势
项目名称:ml-course 项目地址url:https://github.com/girafe-ai/ml-course项目语言:Jupyter Notebook历史star数:2880今日star数:207项目维护者:neychev, girafeai, v-goncharenko, vmarchenkoff, HCL-271项…...
深入浅出Redis 缓存使用问题 | 长文分享
目录 数据一致性 先更新缓存,后更新数据库【一般不考虑】 先更新数据库,再更新缓存【一般不考虑】 先删除缓存,后更新数据库 先更新数据库,后删除缓存【推荐】 怎么选择这些方案?采用哪种合适? 缓存…...
PINN:用深度学习PyTorch求解微分方程
神经网络技术已在计算机视觉与自然语言处理等多个领域实现了突破性进展。然而在微分方程求解领域,传统神经网络因其依赖大规模标记数据集的特性而表现出明显局限性。物理信息神经网络(Physics-Informed Neural Networks, PINN)通过将物理定律直接整合到学习过程中&a…...
Ubuntu vs CentOS:Shell 环境加载机制差异分析
CentOS与Ubuntu Shell环境加载机制差异及解决方案 一、问题现象还原 在 Ubuntu 系统中,希望登录时 /etc/profile.d/ipenv.sh 脚本未自动执行,而在 CentOS 上正常工作的根本原因是: Ubuntu 和 CentOS 采用了不同的 shell 初始化机制&#x…...
在 macOS 上修改 最大文件描述符限制(Too many open files) 和 网络端口相关参数 需要调整系统级配置的详细步骤
在 macOS 上修改 最大文件描述符限制(Too many open files) 和 网络端口相关参数 需要调整系统级配置。以下是详细步骤: 在 macOS 上修改 最大文件描述符限制(Too many open files) 和 网络端口相关参数 需要调整系统级…...
C语言 |位域结构体
在C语言中,位域结构体(Bit-field Structure)是一种通过按位分配内存优化存储空间的数据结构,特别适用于需要精确控制二进制位操作的场景(如嵌入式开发、硬件寄存器操作等)。以下是关于位域结构体的核心要点…...
Charles抓包-安装和IOS抓包指导
网络抓包工具使用指南 下载安装 目前市面上主流的抓包工具包括Charles和Sniff Master。其中Charles是一款老牌抓包工具,功能强大;而Sniff Master作为后起之秀,界面简洁,操作更加人性化。 建议从官网下载最新版本: …...
Redis 学习目标
🎯 Redis 学习目标(开发者视角) ✅ 一、学习完成后能掌握的核心能力: 分类具体内容📦 基础能力熟练掌握 Redis 五大数据结构(String、List、Hash、Set、ZSet),会用也会选对场景&am…...
Redis最佳实践——性能优化技巧之Pipeline 批量操作
Redis Pipeline批量操作在电商应用中的性能优化技巧 一、Pipeline核心原理与性能优势 1. 工作机制对比: sequenceDiagramtitle 常规请求 vs Pipeline请求# 常规模式Client->>Redis: 命令1Redis-->>Client: 响应1Client->>Redis: 命令2Redis--&g…...
Redis 集群(Cluster)
1. Redis 集群概述 Redis 集群是一种分布式架构,旨在提供数据分区和高可用性。它能够通过将数据分散到多个节点上来扩展 Redis,使其能够处理更多的数据量和更高的并发请求。Redis 集群实现了自动分片、故障转移和复制等功能。 Redis 集群与传统的单节点…...
XSS 跨站SVGPDFFlashMXSSUXSS配合上传文件添加脚本
#MXSS : https://www.fooying.com/the-art-of-xss-1-introduction/ #UXSS : Universal Cross-Site Scripting(一般是浏览器自身的问题) UXSS 是利用浏览器或者浏览器扩展漏洞来制造产生 XSS 并执行代码的一种攻击类型。 MICR…...
数据库主从延迟全解析:原因、影响与解决之道
目录 一、引言:理解数据库主从架构 二、数据库主从延迟的定义与测量 2.1 主从延迟的技术定义 2.2 如何测量主从延迟 2.3 主从延迟对系统的影响 三、主从延迟的常见原因分析 3.1 网络延迟因素 3.1.1 网络质量与带宽限制 3.1.2 地理位置分布造成的延迟 3.2 …...
BERT、T5、ViT 和 GPT-3 架构概述及代表性应用
BERT、T5、ViT 和 GPT-3 架构概述 1. BERT(Bidirectional Encoder Representations from Transformers) 架构特点 基于 Transformer 编码器:BERT 使用多层双向 Transformer 编码器,能够同时捕捉输入序列中每个词的左右上下文信息…...
第十七天 - Jenkins API集成 - 流水线自动化 - 练习:CI/CD流程优化
前言 在DevOps实践中,持续集成与持续交付(CI/CD)是现代软件工程的核心支柱。作为业界使用最广泛的自动化服务器,Jenkins凭借其强大的插件生态和灵活的流水线配置能力,成为企业级CI/CD落地的首选工具。本文将深入解析J…...
SageAttention2
“SageAttention2: Efficient Attention with Thorough Outlier Smoothing and Per-thread INT4 Quantization”由Jintao Zhang等人撰写。文章提出SageAttention2,通过线程级INT4量化、Q矩阵平滑、两级累加策略等技术,在提升注意力计算效率的同时保持精度…...