无忧启动论坛

标题: 趣味求解 [打印本页]

作者: kkkssc    时间: 2019-12-30 18:19
标题: 趣味求解
目标,将喜好的桌面单独创建一个硬链接目录(然后可以设置这个目录为墙纸) 脚本如下,但是这个实在是太麻烦了,有没有专家能写成:FOR......DO...... 模式?
.
.
.
set ds="E:\My Pictures\Fav HardLinks\"
set r1="E:\My Pictures\2560X1080 Fav\"
set r2="E:\My Pictures\2560X1080 Cartoon\"
set r3="E:\My Pictures\2560X1080 Fav3\"
set r4="E:\My Pictures\2560X1080 ReSize\"
set r5="E:\My Pictures\2560x1080 创意\"
set r6="E:\My Pictures\2560X1080 热带鱼\"

if not exist %ds% md %ds% else del /s/q %ds%*.*

set r1f1="Collection_8 (80).jpg"
set r2f1="wreck_it_ralph-009.jpg"
set r2f2="303891_copy.jpg"
set r3f1="Collection_3 (52).jpg"
set r4f1="299122_copy.jpg"
set r5f1="Collection_4 (66).jpg"
set r6f1="Tropical-fish-clown-fish-Cocos-Island-Costa-Rica.jpg"

mklink /h %ds%%r1f1% %r1%%r1f1%
mklink /h %ds%%r2f1% %r2%%r2f1%
mklink /h %ds%%r2f2% %r2%%r2f2%
mklink /h %ds%%r3f1% %r3%%r3f1%
mklink /h %ds%%r4f1% %r4%%r4f1%
mklink /h %ds%%r5f1% %r5%%r5f1%
mklink /h %ds%%r6f1% %r6%%r6f1%

@pause & exit

.
.
.
.
.
.
作者: nttwqz    时间: 2019-12-30 20:31
砖家想说,你只为每个文件夹里的一张图片建立硬链接,还编写什么批处理,直接执行完不就完了。
作者: x9tian    时间: 2019-12-30 22:12
没必要
作者: kkkssc    时间: 2019-12-31 12:52
nttwqz 发表于 2019-12-30 20:31
砖家想说,你只为每个文件夹里的一张图片建立硬链接,还编写什么批处理,直接执行完不就完了。

只是拿几张举例,要是100张呢?
作者: holley2008    时间: 2019-12-31 13:04
本帖最后由 holley2008 于 2019-12-31 14:32 编辑

没看懂!
是这个意思?
  1. @echo off & setlocal EnableDelayedExpansion
  2. cd /d %~dp0
  3. set d="E:\My Pictures"
  4. set ds="E:\My Pictures\Fav HardLinks"
  5. for /f "delims=" %%i in ('"dir /a-d/s/b/on *.jpg"') do (
  6.         set file1=%%~fi
  7.         set file2=%%~nxi
  8.         set file1=!file1:/=/!
  9.         set ds=%ds:~1,-1%
  10.         pause
  11.         mklink /h !ds!!file2! !file1!
  12. )
  13. pause
复制代码

作者: nttwqz    时间: 2019-12-31 13:13
kkkssc 发表于 2019-12-31 12:52
只是拿几张举例,要是100张呢?

仅从脚本看确实如此,个人理解,其它图片你不喜欢~~~
作者: kkkssc    时间: 2019-12-31 13:21
holley2008 发表于 2019-12-31 13:04
没看懂!
是这个意思?

谢谢你的解答,不过这个应该不行,首先应该判断文件存不存在,然后存在了再执行,每个文件夹的文件个数不一样
作者: kkkssc    时间: 2019-12-31 13:24
nttwqz 发表于 2019-12-31 13:13
仅从脚本看确实如此,个人理解,其它图片你不喜欢~~~

图库里成千上万的图,喜欢的,就会写在一个脚本里,最好是txt,然后导入执行硬链接,大家共同学习,我只是觉得可行,可能想法不对
作者: holley2008    时间: 2019-12-31 14:31
本帖最后由 holley2008 于 2019-12-31 14:37 编辑
kkkssc 发表于 2019-12-31 13:21
谢谢你的解答,不过这个应该不行,首先应该判断文件存不存在,然后存在了再执行,每个文件夹的文件个数不 ...

要判断啥?你爱好某几张还是某一类?你要是就爱这几张么...当我白瞎了小一会功夫测试。
作者: kkkssc    时间: 2019-12-31 14:40
holley2008 发表于 2019-12-31 14:31
要判断啥?你爱好某几张还是某一类?你要是就爱这几张么...当我白瞎了小一会功夫测试。

我贴出的脚本就是举例的意思,图片来自不同的目录,然后文件名,跟文件数都不一样,需要的就会写出来,r=...  r*f*=...  然后创建硬链,  是我没说清楚  ,不好意思,哈
作者: nttwqz    时间: 2019-12-31 14:53
kkkssc 发表于 2019-12-31 14:40
我贴出的脚本就是举例的意思,图片来自不同的目录,然后文件名,跟文件数都不一样,需要的就会 ...

我始终难以理解的是:

你这个和将所有图片放到一个文件夹里面,仅保留自己喜欢的有什么区别
作者: holley2008    时间: 2019-12-31 14:54
kkkssc 发表于 2019-12-31 14:40
我贴出的脚本就是举例的意思,图片来自不同的目录,然后文件名,跟文件数都不一样,需要的就会 ...

试着将mklink /h换成copy之类的命令,测试一下就知道效果了。硬链接之前我加个pause就是提醒你确认一下。
如果弄不来,就踏踏实实使用LinkShellExtension之类的工具帮助创建硬链接吧...或者参看http://bbs.wuyou.net/forum.php?m ... p;extra=&page=1注册到右键实现也比批处理方便的多。
作者: kkkssc    时间: 2019-12-31 15:33
nttwqz 发表于 2019-12-31 14:53
我始终难以理解的是:

你这个和将所有图片放到一个文件夹里面,仅保留自己喜欢的有什么区别

有区别,因为图片太多已经整理归类了,这个可以选出一小部分,然后硬链接不占空间,一举两得,再说了,不是说了趣味嘛,我其实就是想写一个 for   do   的命令阵列,也可以加深学习强化下脚本能力
作者: kkkssc    时间: 2019-12-31 15:33
holley2008 发表于 2019-12-31 14:54
试着将mklink /h换成copy之类的命令,测试一下就知道效果了。硬链接之前我加个pause就是提醒你确认一下。 ...

好吧,谢谢指点




欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3