首页 > 系统相关 >windows下的mklink命令

windows下的mklink命令

时间:2024-01-26 13:25:27浏览次数:28  
标签:25 windows 创建 txtfile 命令 test mklink txt dir

mklink 命令用于创建符号连接,有三个选项,/D/J/H

/D      创建目录符号链接。默认为文件符号链接。
/H      创建硬链接而非符号链接。
/J      创建目录联接

先使用三个参数分别创建文件、文件夹试试

思路:创建一个分本和目录,然后分别使用 D、J、H 三个参数来创建目录链接和文件链接。

创建一个文本和目录

E:\test>echo > test_txtfile.txt

E:\test>mkdir test_dir

使用D选项创建

E:\test>mklink /D D_dir test_dir  
为 D_dir <<===>> test_dir 创建的符号链接

E:\test>mklink /D D_txtfile.txt test_txtfile.txt
为 D_txtfile.txt <<===>> test_txtfile.txt 创建的符号链接

使用J选项创建

E:\test>mklink /J J_dir test_dir 
为 J_dir <<===>> test_dir 创建的联接

E:\test>mklink /J J_txtfile.txt test_txtfile.txt
为 J_txtfile.txt <<===>> test_txtfile.txt 创建的联接

使用H选项创建

E:\test>mklink /H H_dir test_dir
拒绝访问。

E:\test>mklink /H H_txtfile.txt test_txtfile.txt
为 H_txtfile.txt <<===>> test_txtfile.txt 创建了硬链接

创建结果

E:\test>dir
 驱动器 E 中的卷是 文档
 卷的序列号是 AA08-BBAA

 E:\test 的目录

2024/01/25  15:27    <DIR>          .
2024/01/25  15:20    <DIR>          test_dir
2024/01/25  15:20                21 test_txtfile.txt
2024/01/25  15:22    <SYMLINKD>     D_dir [test_dir]
2024/01/25  15:23    <SYMLINKD>     D_txtfile.txt [test_txtfile.txt]
2024/01/25  15:25    <JUNCTION>     J_dir [E:\test\test_dir]
2024/01/25  15:25    <JUNCTION>     J_txtfile.txt [E:\test\test_txtfile.txt]
2024/01/25  15:20                21 H_txtfile.txt
               2 个文件             42 字节
               6 个目录 403,161,616,384 可用字节

E:\test>

UI显示效果

image-20240125161902694

分析总结

  • /D生成的叫符号链接(SYMLINKD),/J生成的叫联接(JUNCTION),这两种都是软链接

  • 不管从直观观察还是使用,都能发现:/J/D都只能作用于目录,不能用于文件。(不会检查引用目录是否存在)

使用/J/D创建的D_txtfile.txtJ_txtfile.txt,打开报错,提示目录名称无效。

image-20240125162448539

  • /D创建的符号链接,在操作系统看来就是一个快捷方式,/J创建的联接,在操作系统看来就是目录本身。

/D创建的D_dir右键属性有个快捷方式的选项,/J创建的J_dir右键属性没有快捷方式选项

image-20240125162655138

  • /J创建联接的时候,底层都会转为绝对地址;/d创建的时候命令中使用什么类型的地址,生成的符号链接就使用什么。
@rem 补一个,/D选项使用绝对地址

e:\test>mklink /D D_dir2 E:\test\test_dir
为 D_dir2 <<===>> E:\test\test_dir 创建的符号链接

e:\test>dir /al
2024/01/25  15:22    <SYMLINKD>     D_dir [test_dir]
2024/01/25  16:07    <SYMLINKD>     D_dir2 [E:\test\test_dir]
2024/01/25  15:25    <JUNCTION>     J_dir [E:\test\test_dir]
2024/01/25  15:25    <JUNCTION>     J_txtfile.txt [E:\test\test_txtfile.txt]
  • 硬链接没有标识,无法区分(不管是命令行还是UI界面),而且硬链接不能跨分区创建
e:\test>mklink /H H_dir D:\test\testdir
系统无法将文件移到不同的磁盘驱动器。

e:\test>mklink /H H_txtfile.txt D:\test\testfile.txt
系统无法将文件移到不同的磁盘驱动器。

e:\test>
  • 硬链接不允许创建目录的硬链接,只能对文件使用。

使用管理员权限创建目录的硬连接也失败

image-20240125152823835

在家目录下创建依然失败

image-20240125170111097

标签:25,windows,创建,txtfile,命令,test,mklink,txt,dir
From: https://www.cnblogs.com/jiyuchen1/p/17987663

相关文章

  • 关闭windows的系统还原
    先删除系统还原保存的还原点系统保护中,点配置,然后删除还原点,并关闭系统还原在组策略中禁用系统还原按Win+R键打开运行窗口,输入gpedit.msc并按Enter键打开组策略编辑器。在组策略中,依次打开:计算机配置\管理模板\系统\系统还原,然后在右侧窗口中,找到名为“关闭系统......
  • 中兴设备show命令大全,收藏!
    中午好,我的网工朋友。虽然思科华为还是行业老大哥,但应该不少网工工作中用的中兴设备吧?今天就给你来一篇中兴show命令的整合,提供一个详尽的参考手册给你,有效地执行日常监控和故障排除工作。今日文章阅读福利:《中兴—厂家拓扑图标库》私信我,发送暗号“中兴图标”,给你发送全系列图标库......
  • Arch(Manjaro) Linux Pacman 命令详解
    参考Wiki:https://wiki.archlinuxcn.org/zh-hans/Pacmanyay命令参考:HerePacman是一个软件包管理器,作为ArchLinux发行版的一部分。简单来说,就是和apt-get之于Ubuntu一样,pacman就是Arch的apt-get。要想轻松玩转Arch,学会pacman是必需的。Pacman包管理器是ArchLinux的一大亮点。......
  • 命令
    rm用于删除rm-r-f参数一参数2通cp一样,-r选项用于删除文件夹-f表示force,强制删除(buhui弹出提示)‘rm-r’test2test3lsrm支持通配符*,匹配任意内容,做模糊匹配test*表示任何以test靠头的内容*etst表示结尾的内容*test*,cp用于复制文件夹或文件语法:cp-r参数1参数2-r......
  • 在 Windows 中配置 WSL2 与 Debian 的全流程
    在Windows中配置WSL2与Debian的全流程ref:HowtoInstallWSL2onWindows10(Updated)-visitedon2024-01-09Microsoft-如何使用WSL在Windows上安装Linux-visitedon2024-01-09清华大学开源软件镜像站-Debian软件源-visitedon2024-01-09ArchWiki:F......
  • WinDbg学习四(标准命令)
    命令都是实现在WinDBG内部的,执行这些命令时不需要加载任何扩展模块。大多数标准命令是一两个字符或者符号,只有version等少数命令除外。测试代码namespaceWinDbgConsoleSearch{internalclassProgram{privatestaticinti;......
  • Linux30个常用基本命令
    1、cd命令功能说明:切换目录。举例:却换到根目录:cd/2、ls命令功能说明:列出目录内容。举例:列出/var目录的文件和目录的信息:ls–l/var;最常用方式ls–ltr3、cat命令功能说明:查看小文件内容。举例:查看test.txt文件内容:cattest.txt4、chmod命令功能说明:修改文......
  • 使用命令行方式搭建uni-app + Vue3 + Typescript + Pinia + Vite + Tailwind CSS + uv
    使用命令行方式搭建uni-app+Vue3+Typescript+Pinia+Vite+TailwindCSS+uv-ui开发脚手架项目代码以上传至码云,项目地址:gitee.com/breezefaith…目录一、前言近日心血来潮想做一个开源项目,目标是做一款可以适配多端、功能完备的模板工程,包含后台管理系统和前台......
  • Installing Cassandra on Windows
    *[ApacheCassandra|ApacheCassandraDocumentation](https://cassandra.apache.org/_/download.html) *[InstallingCassandraonWindows](https://docs.nomagic.com/display/TWCloud2022x/Installing+Cassandra+on+Windows#:~:text=Cassandra%20is%20not%20supporte......
  • Linux reboot 命令
    ​ Linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell命令和Linux命令。本文主要介绍Linuxreboo......