无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 1356|回复: 34

[讨论] mklink硬连接命令-文件包减肥的好方法

[复制链接]
发表于 2024-2-15 09:22:44 | 显示全部楼层 |阅读模式
很多基于python、Git、conda等整合包,需要集成相应的运行环境,这些文件夹非常大,动辄几个、十几个G,如果下载多个整合包版本,就存在重复占用空间,这也是很多朋友几百G空间不够用的原因。

今天尝试了下用mklink硬连接命令进行减肥,比如:

建立目录硬连接:
@echo off
If not exist "%~dp0runtime"  mklink /j "runtime" "E:\AI\GPT-SoVITS\runtime"
exit

关闭硬连接则:
@echo off
If exist "%~dp0runtime"  rmdir  "runtime"
exit

不过,mklink 有多种方式,/d 、/h 、/j,使用上应该也有不同,哪种方法更好,欢迎坛友讨论指教。
发表于 2024-2-15 09:42:30 | 显示全部楼层
感謝分享,您的善心我們都很開心。

点评

不要这么水 可以吗  详情 回复 发表于 2024-2-15 17:02
回复

使用道具 举报

发表于 2024-2-15 09:47:49 | 显示全部楼层
谢谢分享经验
回复

使用道具 举报

发表于 2024-2-15 09:59:56 来自手机 | 显示全部楼层
h是硬的,只能同分区;d是文件夹,不能用于文件;j没用过,不太清楚。

点评

谢谢指点!对/J参数解释说明确实比较少。  发表于 2024-2-15 10:58
回复

使用道具 举报

发表于 2024-2-15 10:08:49 | 显示全部楼层
可以一试
回复

使用道具 举报

发表于 2024-2-15 10:16:19 | 显示全部楼层
/J  是目录链接,自己倒是常用。

点评

如果程序运行时指定依赖,比如指定运行本软件所在文件夹下的git\bin\git.exe,而git.exe又依赖完整的环境(文件包),那么,用/D、H、J哪个更合理呢?  详情 回复 发表于 2024-2-15 10:51
回复

使用道具 举报

发表于 2024-2-15 10:23:46 来自手机 | 显示全部楼层
设置环境变量也可以减少重复空间

点评

这个主要是解决使用懒人整合包的情况,整合包内集成了所有依赖环境,而程序代码又指定依赖程序调用位置。如果系统是自行安装相应的环境,是可以通过设置环境变量。  详情 回复 发表于 2024-2-15 10:57
回复

使用道具 举报

发表于 2024-2-15 10:32:22 | 显示全部楼层
没用过,不太清楚。
回复

使用道具 举报

 楼主| 发表于 2024-2-15 10:51:24 | 显示全部楼层
本帖最后由 lhc0688 于 2024-2-15 10:52 编辑
201027149 发表于 2024-2-15 10:16
/J  是目录链接,自己倒是常用。

如果程序运行时指定依赖,比如指定运行本软件所在文件夹下的git\bin\git.exe,而git.exe又依赖完整的环境(完整文件夹),那么,用/D、H、J哪个更合理呢?

点评

那就 目录链接,源文件位置不变只是个快捷方式指向,实际迁放在自己认为分区空间充足的目标目录。  详情 回复 发表于 2024-2-15 11:05
回复

使用道具 举报

发表于 2024-2-15 10:52:52 | 显示全部楼层
你这一个一个搞是笨方法,用文件管理器才好啊

点评

不是很明白,能具体说下方法吗?  详情 回复 发表于 2024-2-15 11:00
回复

使用道具 举报

 楼主| 发表于 2024-2-15 10:57:29 | 显示全部楼层
linshi456 发表于 2024-2-15 10:23
设置环境变量也可以减少重复空间

这个主要是解决使用懒人整合包的情况,整合包内集成了所有依赖环境,而程序代码又指定依赖程序调用位置。如果系统是自行安装相应的环境,是可以通过设置环境变量。
回复

使用道具 举报

发表于 2024-2-15 10:58:52 | 显示全部楼层

可以一试
回复

使用道具 举报

 楼主| 发表于 2024-2-15 11:00:38 | 显示全部楼层
2010hook 发表于 2024-2-15 10:52
你这一个一个搞是笨方法,用文件管理器才好啊

不是很明白,能具体说下方法吗?
回复

使用道具 举报

发表于 2024-2-15 11:04:25 | 显示全部楼层
多谢提醒!!!
回复

使用道具 举报

发表于 2024-2-15 11:05:01 | 显示全部楼层
lhc0688 发表于 2024-2-15 10:51
如果程序运行时指定依赖,比如指定运行本软件所在文件夹下的git\bin\git.exe,而git.exe又依赖完整的环境 ...

那就 目录链接,源文件位置不变只是个快捷方式指向,实际迁放在自己认为分区空间充足的目标目录。

点评

如果仅映射一次,使用时不改变对应关系,那参数估计D、H、J应该都可以;如果程序所在文件夹路径有可能改变,比如:E:\CS1\runtime是映射的文件夹,如果把E:\CS1改变成CS2后,要确保runtime仍有效,可能要用/J;  详情 回复 发表于 2024-2-15 11:14
回复

使用道具 举报

 楼主| 发表于 2024-2-15 11:14:18 | 显示全部楼层
201027149 发表于 2024-2-15 11:05
那就 目录链接,源文件位置不变只是个快捷方式指向,实际迁放在自己认为分区空间充足的目标目录。

如果仅映射一次,使用时不改变对应关系,那参数估计D、H、J应该都可以;如果程序所在文件夹路径有可能改变,比如:E:\CS1\runtime是映射的文件夹,如果把E:\CS1改变成CS2后,要确保runtime仍有效,可能要用/J;
回复

使用道具 举报

发表于 2024-2-15 11:14:55 来自手机 | 显示全部楼层
经验分享
回复

使用道具 举报

发表于 2024-2-15 11:33:13 | 显示全部楼层
更多更烦的是javascript那套东西,好几百兆,还都不太一样。
回复

使用道具 举报

发表于 2024-2-15 12:32:43 | 显示全部楼层
用wim单文件免解压小体积才是硬道理
回复

使用道具 举报

发表于 2024-2-15 13:18:11 | 显示全部楼层
谢谢分享
回复

使用道具 举报

发表于 2024-2-15 13:22:22 | 显示全部楼层
这个不错能有效节省空间
回复

使用道具 举报

发表于 2024-2-15 13:32:54 | 显示全部楼层
感謝分享
回复

使用道具 举报

发表于 2024-2-15 13:56:36 | 显示全部楼层
/J 比较万能
回复

使用道具 举报

发表于 2024-2-15 13:58:52 | 显示全部楼层
经过学习
回复

使用道具 举报

发表于 2024-2-15 15:05:45 | 显示全部楼层
我记得好像有专门的工具做这个事情,把相同的文件用链接来表达,记不清是DISM++还是哪个了
回复

使用道具 举报

发表于 2024-2-15 17:02:56 | 显示全部楼层
wsx710904 发表于 2024-2-15 09:42
感謝分享,您的善心我們都很開心。

不要这么水 可以吗
回复

使用道具 举报

发表于 2024-2-15 19:19:03 | 显示全部楼层
windows目录下的Installer文件夹何时可以支持目录链接?或者有什么方法可以迁移这个文件夹?

点评

一直都可以的  详情 回复 发表于 昨天 17:10
回复

使用道具 举报

发表于 2024-2-20 23:50:58 | 显示全部楼层
感谢楼主分享
回复

使用道具 举报

发表于 2024-2-21 06:07:44 来自手机 | 显示全部楼层
学习了
回复

使用道具 举报

发表于 昨天 17:09 来自手机 | 显示全部楼层
谢谢分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-4-14 16:51

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表