现代操作系统上创建各类链接的方法汇总
文章目录
- 现代操作系统上创建各类链接的方法汇总
- windows: cmd下的`mklink`创建链接
- 示例
- powershell 创建链接
- 创建常规文件和目录
- 创建链接
- linux shell 创建硬链接
- NAME
- SYNOPSIS
- 详细说明
- 常用选项
- 示例
- 检查与辨识符号链接🎈
- linux下检查
- ls -l 命令
- file 命令
- windows下检查
- cmd下dir命令查看
- powershell来查看符号连接的类型与其target👺
- powershell函数
- 硬链接计数
- linux:硬连接和软连接的对比
- ls -li
- ls -l
- powershell/bash命令行中查看目录项目的文件模式👺
- powershell获取DirectoryInfo信息
- 非普通文件/目录示例
- 其他
- 基础权限标识
- 权限位(Linux风格)
- Windows特定权限标识
- 查看文件模式
- FAQ
- 使用限制
- 重设符号链接的target
- 中间环境变量对符号链接创建的影响
现代操作系统上创建各类链接的方法汇总
windows: cmd下的mklink
创建链接
-
mklink | Microsoft Learn
-
mklink是cmd下的命令,powershell无法直接调用
-
如果需要在powershell执行mklink命令,需要借助
cmd /c mklink
来代替mklink
-
当然powershell也有自己的创建符号的方法,即
New-item
方法,用不上古老的mklink
,这部分放到后面介绍 -
mklink
虽然比较古老,但是兼容性好,支持windows vista等老系统
-
-
mklink:三种模式可以创建不同的链接符号.详情查看文档
-
C:\Users\cxxu\AppData\Local>mklink /? Creates a symbolic link.MKLINK [[/D] | [/H] | [/J]] Link Target/D Creates a directory symbolic link. Default is a filesymbolic link./H Creates a hard link instead of a symbolic link./J Creates a Directory Junction.Link Specifies the new symbolic link name.Target Specifies the path (relative or absolute) that the new linkrefers to.
示例
PS☀️[BAT:71%][MEM:23.99% (7.61/31.71)GB][20:48:05]
# [cxxu@COLORFULCXXU][~\Desktop]
PS> cmd /c mklink /d symbolDir T:\DirInFat32\
symbolic link created for symbolDir <<===>> T:\DirInFat32\PS☀️[BAT:71%][MEM:23.97% (7.6/31.71)GB][20:48:34]
# [cxxu@COLORFULCXXU][~\Desktop]
PS> lsDirectory: C:\Users\cxxu\DesktopMode LastWriteTime Length Name
---- ------------- ------ ----
l---- 2024/5/28 20:48 symbolDir T:\DirInFat32\
powershell 创建链接
New-Item
是 PowerShell 中用于创建新的文件系统对象(如文件和目录)的命令。通过指定 -Type
参数,可以创建不同类型的项目。
创建常规文件和目录
以下是各类型的详细解释:
-
File(文件):创建一个新的文件。例如,你可以使用
New-Item -Path "C:\Example\newfile.txt" -ItemType File
来创建一个名为newfile.txt
的文件。示例:
New-Item -Path "C:\Example\newfile.txt" -ItemType File
这将创建一个空文件
newfile.txt
在C:\Example
目录下。 -
Directory(目录):创建一个新的文件夹或目录。例如,你可以使用
New-Item -Path "C:\Example\NewFolder" -ItemType Directory
来创建一个名为NewFolder
的目录。示例:
New-Item -Path "C:\Example\NewFolder" -ItemType Directory
这将在
C:\Example
目录下创建一个新的文件夹NewFolder
。
创建链接
-
SymbolicLink(符号链接):创建一个符号链接,类似于 Unix 系统中的软链接。符号链接是指向另一个文件或目录的快捷方式。例如,你可以使用
New-Item -Path "C:\LinkToFile.txt" -ItemType SymbolicLink -Target "C:\OriginalFile.txt"
来创建一个指向C:\OriginalFile.txt
的符号链接。示例:
New-Item -Path "C:\LinkToFile.txt" -ItemType SymbolicLink -Target "C:\OriginalFile.txt"
这将创建一个符号链接
LinkToFile.txt
,它指向C:\OriginalFile.txt
。 -
Junction(连接点):创建一个目录连接点,可以将一个目录链接到另一个目录。例如,你可以使用
New-Item -Path "C:\JunctionLink" -ItemType Junction -Target "C:\OriginalFolder"
来创建一个指向C:\OriginalFolder
的目录连接点。示例:
New-Item -Path "C:\JunctionLink" -ItemType Junction -Target "C:\OriginalFolder"
这将在
C:\JunctionLink
创建一个目录连接点,它指向C:\OriginalFolder
。 -
HardLink(硬链接):创建一个硬链接,硬链接是文件系统中同一个文件的多个路径名,多个硬链接指向相同的数据块。例如,你可以使用
New-Item -Path "C:\HardLinkToFile.txt" -ItemType HardLink -Target "C:\OriginalFile.txt"
来创建一个指向C:\OriginalFile.txt
的硬链接。示例:
New-Item -Path "C:\HardLinkToFile.txt" -ItemType HardLink -Target "C:\OriginalFile.txt"
这将创建一个硬链接
HardLinkToFile.txt
,它与C:\OriginalFile.txt
指向同一个数据块。
这些命令中的每一个都允许你在文件系统中创建不同类型的对象,以便更好地管理和组织文件和目录。
linux shell 创建硬链接
-
ln(1) - Linux manual page (man7.org)
-
-
NAMEln - make links between filesSYNOPSISln [OPTION]... [-T] TARGET LINK_NAMEln [OPTION]... TARGETln [OPTION]... TARGET... DIRECTORYln [OPTION]... -t DIRECTORY TARGET...DESCRIPTIONIn the 1st form, create a link to TARGET with the name LINK_NAME. In the 2ndform, create a link to TARGET in the current directory. In the 3rd and 4thforms, create links to each TARGET in DIRECTORY. Create hard links by default,symbolic links with --symbolic. By default, each destination (name of new link)should not already exist. When creating hard links, each TARGET must exist.Symbolic links can hold arbitrary text; if later resolved, a relative link is in‐terpreted in relation to its parent directory.Mandatory arguments to long options are mandatory for short options too.--backup[=CONTROL]make a backup of each existing destination file-b like --backup but does not accept an argument-d, -F, --directoryallow the superuser to attempt to hard link directories (note: will proba‐bly fail due to system restrictions, even for the superuser)-f, --forceremove existing destination files....
ln
命令用于在文件之间创建链接。链接可以是硬链接(hard link)或者符号链接(symbolic link)。以下是ln
命令的基本用法及其各个选项的详细说明。
NAME
ln
- 在文件之间创建链接
SYNOPSIS
ln [OPTION]... [-T] TARGET LINK_NAME
ln [OPTION]... TARGET
ln [OPTION]... TARGET... DIRECTORY
ln [OPTION]... -t DIRECTORY TARGET...
详细说明
ln [OPTION]... [-T] TARGET LINK_NAME
这个用法是创建一个名为LINK_NAME
的链接,指向TARGET
文件或目录。
TARGET
:目标文件或目录。LINK_NAME
:链接名称。
示例:
ln -s /path/to/file /path/to/symlink
在这个示例中,-s
选项表示创建一个符号链接(symbolic link),/path/to/file
是目标文件,/path/to/symlink
是链接名称。
ln [OPTION]... TARGET
这个用法是创建一个指向TARGET
的硬链接。默认情况下,链接名称与TARGET
相同,但创建在当前目录中。
TARGET
:目标文件。
示例:
ln file1
在当前目录中创建一个名为file1
的硬链接,指向file1
文件。
ln [OPTION]... TARGET... DIRECTORY
这个用法是将一个或多个目标文件TARGET
链接到指定的目录DIRECTORY
中。每个链接将保留目标文件的名称。
TARGET...
:一个或多个目标文件。DIRECTORY
:目标目录。
示例:
ln file1 file2 /path/to/directory
在/path/to/directory
目录中创建两个硬链接,分别指向file1
和file2
。
ln [OPTION]... -t DIRECTORY TARGET...
这个用法与上一个用法类似,但在选项中显式指定目标目录DIRECTORY
。
DIRECTORY
:目标目录。TARGET...
:一个或多个目标文件。
示例:
ln -t /path/to/directory file1 file2
在/path/to/directory
目录中创建两个硬链接,分别指向file1
和file2
。
常用选项
-s, --symbolic
:创建符号链接而不是硬链接。-f, --force
:强制覆盖已经存在的链接。-n, --no-dereference
:在目标是符号链接时,不要跟随目标。-T, --no-target-directory
:将链接视为文件而不是目录。-t DIRECTORY, --target-directory=DIRECTORY
:将链接创建在指定的目录中。
示例
- 创建硬链接:
ln file1 file2
创建一个名为file2
的硬链接,指向file1
。
- 创建符号链接:
ln -s file1 symlink
创建一个名为symlink
的符号链接,指向file1
。
- 在指定目录中创建链接:
ln file1 file2 /path/to/directory
在/path/to/directory
目录中创建两个硬链接,分别指向file1
和file2
。
- 强制覆盖已经存在的链接:
ln -sf file1 existing_symlink
创建一个名为existing_symlink
的符号链接,指向file1
,并覆盖已有的existing_symlink
。
以上是ln
命令的基本用法及常用选项的详细介绍。如果需要更多帮助,可以使用man ln
命令查看手册页。
检查与辨识符号链接🎈
- shell script - Determining if a file is a hard link or symbolic link? - Unix & Linux Stack Exchange
主要是针对SymbolicLink的检查,而windows上还可以检查junction类型的链接
而HardLink由于其特点而不像其他类型链接那样容易检查,但是可以计数一个文件具有多少个Hardlink
linux下检查
ls -l 命令
该选项可以检查某个目录下的symbolic link
链接会以箭头指示
# cxxu @ cxxuAli in /usr/bin [15:34:47] C:130
$ ls -1l python*
...
lrwxrwxrwx 1 root root 16 Oct 25 2018 python3-config -> python3.6-config
lrwxrwxrwx 1 root root 10 Feb 8 14:51 python3m -> python3.6m
lrwxrwxrwx 1 root root 17 Oct 25 2018 python3m-config -> python3.6m-config
file 命令
- 该命令可能需要手动安装
- 可以识别出
symbolic link
以及链接的target.
# cxxu @ cxxuAli in /usr/bin [15:37:52]
$ file python3
python3: symbolic link to python3.6
windows下检查
cmd下dir命令查看
-
两种方式执行
dir
-
在cmd下直接执行
dir
- 对于powershell用户,可以在powershell中输入
cmd
即可切换到cmd,然后执行dir
- 对于powershell用户,可以在powershell中输入
-
在powershell下直接执行
cmd /c dir
PS C:\Users\cxxu\AppData\Local> cmd /c dirVolume in drive C is win11Volume Serial Number is EC48-2060Directory of C:\Users\cxxu\AppData\Local2023/05/24 15:12 <DIR> . 2023/03/05 13:59 <DIR> 0install.net ... 2023/05/24 15:12 <JUNCTION> Android [\??\D:\Android] ... 2023/04/07 18:15 <DIR> cache 2023/01/20 11:35 <DIR> calibre-cache .. 2023/05/24 20:37 <SYMLINKD> android_test [D:\android] ...
- 可以看到,
junction
类型和symbol
的类型链接被显示出来.
-
powershell来查看符号连接的类型与其target👺
-
ls | Format-Table name,LinkType,Target
,其中Format-Table
可以简写为ft
-
PS C:\Users\cxxu> ls |where {$_.LinkType}|ft name,LinkType,LinkTarget,ModeName LinkType LinkTarget ---- -------- ---------- android_test SymbolicLink D:\android downloads Junction D:\usersByCxxu\DownloadsAll\ ser Junction D:\repos\ccser\emotion-recognition-using-speech
-
过滤掉(不显示)非链接类型
-
Get-ChildItem | Sort-Object -Property target -Descending | Select-Object name, linktype, target|where {$_.Target }
-
PS C:\Users\cxxu> Get-ChildItem | Sort-Object -Property target -Descending | Select-Object name, linktype, target|where {$_.Target }Name LinkType Target ---- -------- ------ downloads Junction D:\usersByCxxu\DownloadsAll\ ser Junction D:\repos\ccser\emotion-recognition-using-speech\ android_test SymbolicLink D:\android
-
powershell函数
function Get-LinksOfType
{<# .SYNOPSIS查看指定类型的链接,以表格的形式输出(包括:name,linktype,linktarget)可用的类型包括:hardlink,symboliclink,junction默认不区分大小写..EXAMPLEPS☀️[BAT:71%][MEM:36.25% (11.49/31.71)GB][22:20:59]# [cxxu@COLORFULCXXU][~\Desktop]PS> pwshPowerShell 7.4.2PS C:\Users\cxxu\Desktop> get-LinksOfType -Directory C:\Users\cxxu -LinkType symboliclinkName LinkType LinkTarget Mode---- -------- ---------- ----repos SymbolicLink C:\repos l----.EXAMPLEPS C:\Users\cxxu\Desktop> get-LinksOfType -Directory ./ -LinkType symboliclinkName LinkType LinkTarget Mode---- -------- ---------- ----symbolDir SymbolicLink T:\DirInFat32\ l----TestSymbolicLink SymbolicLink U:\demo.txt la---.EXAMPLEPS C:\Users\cxxu\Desktop> get-LinksOfTypeName LinkType LinkTarget Mode---- -------- ---------- ----demoHardlink.txt HardLink la---demoJunctionDir Junction C:\Users\cxxu\desktop\testDir\innerDir l----symbolDir SymbolicLink T:\DirInFat32\ l----TestSymbolicLink SymbolicLink U:\demo.txt la---#>param([Alias('D')]$Directory = '.',[validateset( 'symboliclink', 'junction', 'hardlink' , 'all')]$LinkType = 'all')$all = Get-ChildItem $Directory | Where-Object { $_.LinkType } | Sort-Object -Property LinkType$Specifiedtype = $all | Where-Object { $_.LinkType -eq $linkType } $res = ($LinkType -eq 'all') ? $all : $Specifiedtype$res = $res | Format-Table name, LinkType, LinkTarget,Modereturn $res
}
硬链接计数
在大多数UNIX和Linux文件系统中,每个inode维护了一个链接计数(link count),表示有多少个硬链接指向该inode。这个链接计数反映了通过不同文件名访问相同文件内容的数量。
- 当你创建一个文件时,其inode的链接计数默认为1。
- 每增加一个硬链接到该文件,inode的链接计数就加1。
- 当你删除(unlink)一个硬链接(不是通过删除命令rm原文件)时,相应inode的链接计数减1。
- 只有当inode的链接计数降为0时,文件系统才会真正释放该inode及其所占用的磁盘空间,这意味着文件内容被永久删除。
这种机制确保了文件数据的安全性,即使你误删了一个硬链接,只要还有其他硬链接存在,文件数据就不会丢失。这也是硬链接与软链接(符号链接)的一个重要区别,因为软链接是独立的文件实体,有自己的inode和存储空间,对软链接的删除不会影响原始文件的链接计数。
linux:硬连接和软连接的对比
#创建硬链接会改变文件的引用计数
#( 05/24/22@ 2:31PM )( cxxu@cxxuAli ):~/testLinkec 'abc'>file1
#( 05/24/22@ 2:31PM )( cxxu@cxxuAli ):~/testLinkls -li
total 4
1835411 -rw-rw-r-- 1 cxxu cxxu 4 May 24 14:31 file1
#( 05/24/22@ 2:31PM )( cxxu@cxxuAli ):~/testLinkln file1 file2_hard
#( 05/24/22@ 2:32PM )( cxxu@cxxuAli ):~/testLinkls -li
total 8
1835411 -rw-rw-r-- 2 cxxu cxxu 4 May 24 14:31 file1
1835411 -rw-rw-r-- 2 cxxu cxxu 4 May 24 14:31 file2_hard#符号链接不会改变引用计数
#( 05/24/22@ 2:32PM )( cxxu@cxxuAli ):~/testLinkln -s file1 file3_symbolic
#( 05/24/22@ 2:32PM )( cxxu@cxxuAli ):~/testLinkls -li
total 8
1835411 -rw-rw-r-- 2 cxxu cxxu 4 May 24 14:31 file1
1835411 -rw-rw-r-- 2 cxxu cxxu 4 May 24 14:31 file2_hard
1835412 lrwxrwxrwx 1 root root 5 May 24 14:32 file3_symbolic -> file1
#( 05/24/22@ 2:32PM )( cxxu@cxxuAli ):~/testLinkrm file1
#( 05/24/22@ 2:32PM )( cxxu@cxxuAli ):~/testLinkls -li
total 4
1835411 -rw-rw-r-- 1 cxxu cxxu 4 May 24 14:31 file2_hard
1835412 lrwxrwxrwx 1 root root 5 May 24 14:32 file3_symbolic -> file1
ls -li
#( 05/24/22@ 2:38PM )( cxxu@cxxuAli ):~/testLinkmanly ls -l -ils - list directory contents
============================-i, --inodeprint the index number of each file-l use a long listing format
ls -l
ls -l file1
-rw-rw-r--. 1 lilo lilo 0 Feb 26 07:08 file1
From the output above we can deduct a following information:
- -rw-rw-r- permissions
- 1 : number of linked hard-links
- lilo: owner of the file
- lilo: to which group this file belongs to
- 0: size
- Feb 26 07:08 modification/creation date and time
- file1: file/directory name
powershell/bash命令行中查看目录项目的文件模式👺
在PowerShell中,文件模式(Mode)是指用于描述文件或目录权限和属性的一系列字符。这些模式通常在使用命令如Get-ChildItem
, 或进行文件操作时遇到。
下面是对常见文件模式字符的解读:
在 PowerShell 中,Mode
属性是通过 Get-Item
或类似命令获取文件或目录时显示的一个属性,它描述了该文件或目录的访问权限和类型信息。
Mode
字符串由五个字符组成,每个字符都有特定的含义:
- 第一个字符表示文件类型:
d
: 目录l
: 链接类型(如果要进一步是SymbolicLink还是Junction,需要进一步查看linkType)- 如果是la—类型的,则是硬链接(硬链接的目标是无法通过LinkType来查看的,只能知道它的链接类型是硬链接)
-
: 普通文件
- 接下来的三个字符表示所有者的权限:
r
: 可读w
: 可写x
: 可执行-
: 对应的权限未设置
- 第五个,即最后一个字符通常是
-
,在 Windows 中不用于表示额外的权限信息。虽然字符通常是-
,有时会是s
,在 Windows 环境中可能表示该目录被设置为系统文件或目录。到底是什么意思,尚不清楚,没有找到对应的文档介绍
powershell获取DirectoryInfo信息
function Get-PSDirItem
{<# .SYNOPSIS获取子目录的Ps路径对象,而不是子目录中的条目#>param ([Alias('D')]$Directory = '.',[Alias('S')]$SubDirectory)$p = Join-Path -Path $Directory -ChildPath $SubDirectory# 判错逻辑可以不写,如果有错直接抛出错误即可,告诉用户输入的路径是有误的# $exist = Test-Path $p# $p=$exist ? (Resolve-Path $p) : ''$p = Resolve-Path $p$p = $p.Path.Trim('\') #字符串类型Write-Host $p -ForegroundColor Blue$allItems = Get-ChildItem "$p/.."# Write-Host $allItems$res = $allItems | Where-Object { $_.FullName -eq $p }return $res}
非普通文件/目录示例
# [cxxu@COLORFULCXXU][~]
PS> pwdPath
----
C:\Users\cxxuMode LastWriteTime Length Name
---- ------------- ------ ----
...
d-r-- 2024/4/5 11:08 Contacts
dar-- 2024/5/29 20:47 Desktop
d-r-- 2024/5/17 14:25 Documents
da--- 2024/5/27 23:50 Downloads
d-r-- 2024/4/5 11:08 Favorites
d---- 2024/5/20 10:20 go
d-r-- 2024/4/5 11:08 Links
d-r-- 2024/4/10 22:04 Music
dar-- 2024/4/7 16:00 OneDrive
d-r-- 2024/5/26 11:02 Pictures
l---- 2024/5/28 22:20 repos C:\repos
d-r-- 2024/4/5 11:08 Saved Games
权限控制效果:
以上述目录列表中的Saved Games
为例,它的权限为d-r--
;也就是说这是一个只可读的目录
如果您对其执行删除,会出现错误
PS C:\Users\cxxu> Get-PSDirItem -SubDirectory '.\Saved Games\' -Directory .
C:\Users\cxxu\Saved GamesDirectory: C:\Users\cxxuMode LastWriteTime Length Name
---- ------------- ------ ----
d-r-- 2024/4/5 11:08 Saved GamesPS>remove-item '.\Saved Games\'Confirm
The item at C:\Users\cxxu\Saved Games\ has children and the Recurse parameter was not specified. If you continue, all children will be removed with the item. Are you sure you
want to continue?
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
Remove-Item: You do not have sufficient access rights to perform this operation or the item is hidden, system, or read only.
Remove-Item: Directory C:\Users\cxxu\Saved Games\ cannot be removed because it is not empty.
其他
PS>get-PSDirItem -SubDirectory '.\zh-CN\'
C:\Windows\System32\zh-CNDirectory: C:\Windows\System32Mode LastWriteTime Length Name
---- ------------- ------ ----
d---s 2024/5/15 11:53 zh-CN
基础权限标识
- d - 目录。表示该条目是一个目录而非文件。
- - - 文件。表示该条目是一个普通文件。
- l (小写的L) - 符号链接。在支持符号链接的系统上,表示该条目是一个链接到另一个文件或目录的符号链接。
权限位(Linux风格)
在某些上下文中,尤其是当查看与Linux兼容的文件系统(如通过WSL使用)或模拟Linux权限时,你可能会看到类似rwxr-xr--
这样的权限字符串。这里的每个部分代表不同用户/组的权限:
r
(Read) - 读取权限。w
(Write) - 写入权限。x
(Execute) - 执行权限。-
表示没有相应的权限。
这三个字符一组,分别代表:
- 所有者权限。
- 所属组权限。
- 其他人权限。
例如,rwxr-xr--
,每三个一组分组后为rwx r-x r--
表示所有者有读、写、执行权限,所属组有读和执行权限,其他人只有读权限。
Windows特定权限标识
在Windows环境中,文件和目录的权限更为复杂,通常涉及ACL(Access Control List),包括但不限于以下几种权限类型,但这些不直接以字符形式体现在模式中:
- Full Control
- Modify
- Read & Execute
- Read
- Write
- Special Permissions
查看这些详细权限通常需要使用Get-Acl
命令并检查ACL对象的内容。
查看文件模式
要在PowerShell中查看文件或目录的详细模式(包括权限),可以使用如下命令:
# 对于文件或目录的简单属性,包括是否为目录
Get-ChildItem -Path <FilePathOrDirectoryName> | Select-Object Mode# 对于更详细的访问控制列表信息
(Get-Acl -Path <FilePathOrDirectoryName>).Access
请注意,上述Mode
字段显示的信息较为基础,若需查看详细的NTFS权限设置,直接查看ACL信息会更合适。
理解文件模式和权限对于管理文件系统安全至关重要,特别是在执行自动化脚本或进行权限审计时。
FAQ
使用限制
-
windows符号链接执行绑定目标(target)地址的时候是硬编码,而且将环境变量转换为就对路径
-
主要是对于多用户(多系统用户)比较受影响
-
对于非用户目录,影响就要小一些.
重设符号链接的target
我只知道一个变通的方法(不是原生方法)
- 将原符号链接重命名
- 现在可以以原名设定符号链接
- 利用
rename-item
重名名 - 删除旧的被重命名的链接
中间环境变量对符号链接创建的影响
-
在创建符号链接的时候,不应当使用够过多的中间变量(不超过一层(嵌套))
- 过多的中转会导致解析错误
- 例如:未能完全解析成有效路径(绝对路径)
相关文章:

现代操作系统上创建各类链接的方法汇总
文章目录 现代操作系统上创建各类链接的方法汇总windows: cmd下的mklink创建链接示例 powershell 创建链接创建常规文件和目录创建链接 linux shell 创建硬链接NAMESYNOPSIS详细说明常用选项示例 检查与辨识符号链接🎈linux下检查ls -l 命令file 命令 windows下检查…...

CSS中的Flex布局
目录 一.什么是Flex布局 二.Flex布局使用 2.1Flex使用语法 2.2基本概念 三.容器的属性 3.1所有属性概述 3.2flex-direction 3.3flex-wrap 3.4flex-flow 3.5justify-content 3.6align-items 3.7align-content 四.项目(子元素)的属性 4.1所有属性概述 4.2order 4…...

基于扩散模型的,开源世界模型DIAMOND
日内瓦大学、微软研究院和爱丁堡大学的研究人员联合开源了,基于扩散模型的世界模型—DIAMOND。 研究人员之所以选择扩散模型作为基础,是因为可以更好地捕捉视觉细节,同时具有建模复杂多模态分布的能力,以便在不同的环境下进行训练…...

【MySQL精通之路】InnoDB存储引擎
欢迎大家关注Innodb存储引擎专栏: http://t.csdnimg.cn/gEsSn 以下是innodb存储引擎相关所有的的知识点。 1.InnoDB简介 2.InnoDB与ACID模型 3.InnoDB多版本 4.InnoDB体系结构 下图显示了构成InnoDB存储引擎体系结构的内存和磁盘结构。 有关每个结构的信息&…...

【创作活动】探索 GPT-4o:下一代语言模型的技术革命
😄 19年之后由于某些原因断更了三年,23年重新扬帆起航,推出更多优质博文,希望大家多多支持~ 🌷 古之立大事者,不惟有超世之才,亦必有坚忍不拔之志 🎐 个人CSND主页——Mi…...

【热门话题】Debian常用命令指南
🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 💫个人格言: "如无必要,勿增实体" 文章目录 Debian常用命令指南引言1. 文件与目录操作lscdmkdirrmcpmv 2. 包管理aptdpkg 3.…...

人大金仓 KingBase查询死锁,释放死锁
人大金仓(kingbase)查询数据库死锁及释放 kingbase锁表排查以及释放锁 总结下 -- 查询,可自己添加where条件 SELECT * FROM sys_stat_activity WHERE state ! idle AND wait_event_typeLock-- 结束进程 SELECT sys_terminate_backend(pid);...

C++高手进阶:Windows 模块加载的艺术与策略
前文我们讲到了怎么不依赖第三库,搭建自己的测试框架 没有看的读者可以通过这个链接自行阅读: 👉👉👉 自力更生:0依赖三方库,手把手教你打造专属C测试框架 作为项目开发来说,我们通常…...

基于STM32单片机老人体温心率血氧跌倒定位短信报警
一.硬件及设计功能 以STM32F103C8T6为中央处理器,GPS模块用采集数据,将数据发送给单片机后,单片机根据定位计算公式得出当前位置的经纬度信息和时间信息。经过LCD显示器处理后得出和时间信息SIM800模块发送短信到设定的手机号上,将…...

【测评】雨云香港三区云服务器,2核2G 5兆,仅需38元/月
写在前面 雨云香港三区云服务器,高性能的 AMD EPYC 处理器 企业级 NVME SSD 高性能云服务器。2核2G 10兆 400G防御,仅需38元/月,年付7折仅 319.2元/年。 官网:https://www.rainyun.com 本次测评服务器配置如下: C…...

如何应对Android面试官 -> 玩转 Fragment
前言 本章主要讲解下 Framgent 的核心原理; 基础用法 线上基础用法,其他的可以自行百度 FragmentManager manager getSupportFragmentManager(); FragmentTransaction transaction manager.beginTransaction(); transaction.add(R.id.contentlayout,…...

sdbusplus:通过文件描述符传递数据
有的时候需要传递大量的数据,如果将数据通过dbus传递,会消耗大量的带宽。可以通过传递一个文件描述符替代传递数据: 以下的service通过文件描述符接收数据: //fd_service.cpp #include <sdbusplus/asio/connection.hpp> #include <sdbusplus/asio/object_server…...

HyperLPR3 车牌识别
Linux 之前安装了python3 apt install python3.8-venv cd /root python3 -m venv HyperLPR3 REM cd HyperLPR3 source HyperLPR3/bin/activate 参考 https://www.jb51.net/article/222885.htm python -m pip install hyperlpr3 里面有fastapi,opencv等 错误&#x…...

面试的内容
1.C的三大特性:封装,继承,多态 2.C11的特性 3.NULL与Nullptr的区别: nullptr是一个特殊的空指针常量,不能被隐式转换为其他类型。 NULL 在一些情况下可能会发生隐式类型转换 4.智能指针 5.stl/Qt stl stl容器包含哪些&…...

剪映网页版
https://www.capcut.cn/web 免费,免安装,跨平台,视频云合成,简直太好用了!...

pgsql
创建分区表: PostgreSQL分区表_pg分区表-CSDN博客 创建list分区的函数 create or replace function create_list_fq(tb_name char, row_name char) returns int AS $$ declares char; beginraise notice CREATE TABLE if not exists %_% PARTITION OF % FOR VALU…...

Kotlin学习笔记 泛型
在 Kotlin 中,T 通常用作类型参数的占位符,它在实例化或传递参数时会被替换成具体的类型。 Kotlin 支持泛型,这意味着您可以编写可以与多种数据类型一起工作的代码,而不必为每种数据类型编写单独的代码。 ### 泛型类和函数 在 …...

开发者必看:Linux终端的10大装逼神器,让你的命令行炫酷起来!
💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…...

20 VUE学习:插件
介绍 插件 (Plugins) 是一种能为 Vue 添加全局功能的工具代码。下面是如何安装一个插件的示例: import { createApp } from vueconst app createApp({})app.use(myPlugin, {/* 可选的选项 */ })一个插件可以是一个拥有 install() 方法的对象,也可以直接…...

python之any用法
写法对比 代码一: any(i for i in [0,1]) 代码2: any([i for i in [0,1]]) 优劣 结论:代码一写法更好 解释: 在 Python 中,any() 函数可以接受一个可迭代对象作为参数,并返回 True 如果可迭代对象…...

【前端学习——react坑】useState使用
问题 使用useState 时,例如 const [selectedId, setSelectedId] useState([false,true,false]);这样直接利用,无法引发使用selectedId状态的组件的变化,但是selectedId是修改了的 let tempselectedId;temp[toggledId]selectedId[toggledId…...

【前端每日基础】day28——async/await
async/await 是ES2017(ES8)引入的用于处理异步操作的语法糖,基于Promise实现。它使得异步代码看起来像同步代码,从而提高了代码的可读性和可维护性。以下是对 async/await 的详细讲解。 基本语法 async 函数 在一个函数前加上 as…...

错误记录:从把项目从Tomcat8.5.37转到Tomcat10.1.7
错误信息:在本地Servlet项目里没有报错,但是浏览器跳转该servlet时报错 型 异常报告 消息 实例化Servlet类[com.wangdao.lx.MyServlet1]异常 描述 服务器遇到一个意外的情况,阻止它完成请求。 例外情况 jakarta.servlet.ServletExceptio…...

AJAX基础知识
定义 Ajax 异步 JavaScript 和 XML ( async javascript and xml ),使用 Ajax 技术网页应用能够快速地将数据更新呈现在用户界面上,而不需要重载(刷新)整个页面,这使得程序能够更快地回应用户的操…...

xcode依赖包package已经安装,但是提示No such module ‘Alamofire‘解决办法
明明已经通过xcode自带的swift包管理器安装好了依赖包,但是却还是提示:No such module,这个坑爹的xcode,我也只能说服气,但是无奈,没办法攻打苹果总部,只能自己想解决办法了 No such module Ala…...

基于Centos7 安装k8s一主两从
一、资源准备 mac下虚拟机环境搭建 1、使用搜狐的iso源 http://mirrors.sohu.com/centos/7.5.1804/isos/x86_64/CentOS-7-x86_64-Minimal-1804.iso 下载 iso镜像。 2、https://www.macwk.com/soft/vmware 下载 mac vm虚拟机 3、搭建一主两从集群所需虚拟机 4、新建虚拟机…...

基于java实现图片中任意封闭区域识别
需求: 在浏览器中给用户呈现一张图片,用户点击图片中的某些标志物,需要系统给出标志物的信息反馈,达到一个交互的作用。 比如下图中,点击某个封闭区域时候,需要告知用户点击的区域名称及图形形状特性等等。…...

闭包是什么?有什么特性?对页面有什么影响?
闭包是指在一个函数内部定义的函数,并且该函数可以访问到外部函数的变量。闭包可以将外部函数的变量保持在内存中,并且不会被释放。 闭包具有以下特性: 1. 函数内部定义的函数可以访问外部函数的变量。 2. 外部函数的变量可以保持在内存中&a…...

MS Excel: 高亮当前行列 - 保持原有格式不被改变
本文使用条件格式VBA的方法实现高亮当前行列,因为纯VBA似乎会清除原有的高亮格式。效果如下:本文图省事就使用同一种颜色了。 首先最重要的,【选中你期望高亮的单元格区域】,比如可以全选当前sheet的全部区域 然后点击【开始】-【…...

langchain学习(十三)
一、将其他chain的输入作为新chain的输出,三种方式 1、采用连接符"|",推荐 2、采用lamba表达式输入 3、采用pipe方法 from langchain_community.chat_models import ChatOllama from langchain_core.output_parsers import StrOutputParse…...