Board logo

标题: [已解决]有无办法随机或顺序获取文件夹内的文件名 [打印本页]

作者: tireless     时间: 2008-5-22 10:35    标题: [已解决]有无办法随机或顺序获取文件夹内的文件名

完整标题:有没有办法随机/顺序获取文件夹内的文件名或完整文件路径,或者从txt列表中获取(txt中当然是每行一个路径或名称)

这个“获取”基本上的意思就是复制到剪贴板。

用脚本或命令行工具?

[ Last edited by tireless on 2008-5-22 at 02:11 PM ]
作者: zqz0012005     时间: 2008-5-22 10:50
winclip.exe

刚刚有人问过
http://www.cn-dos.net/forum/viewthread.php?tid=40567&fpage=1
作者: tireless     时间: 2008-5-22 11:00
不是复制整个txt,而是随即或顺序复制txt中的其中一行
作者: bat-zw     时间: 2008-5-22 13:39    标题: 这个不要借第三方工具的:


@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in (a.txt) do (
    set /a n+=1
    set _!n!=%%i
)
set /a lines=%random%%%%n%+1
echo !_%lines%!
pause>nul

作者: tireless     时间: 2008-5-22 17:48
谢谢啊,这下可以随机更换壁纸了 可不可以再做个按顺序的?

[ Last edited by tireless on 2008-5-21 at 09:52 PM ]
作者: bat-zw     时间: 2008-5-22 18:03


  Quote:
Originally posted by tireless at 2008-5-22 17:48:
谢谢啊,这下可以随机更换壁纸了:P 可不可以再做个按顺序的?

[ Last edited by tireless on 2008-5-21 at 09:52 PM ]


@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in (a.txt) do (
    set /a n+=1
    set _!n!=%%i
)
:lp
set /a m+=1
cls&echo !_%m%!
if %m% equ %n% set m=0
echo 请按鍵显示下一张
pause>nul
goto lp
[ Last edited by zw19750516 on 2008-5-22 at 06:11 PM ]
作者: tireless     时间: 2008-5-22 18:40
@6 楼
呃~在哪个位置输出?(不要提示)

以下命令要放在哪个地方?
"D:\Program Files\IrfanView\i_view32.exe" !_%m%! /wall=2 /killmesoftly
作者: bat-zw     时间: 2008-5-22 22:24
10秒换一张:
@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in (a.txt) do (
    set /a n+=1
    set _!n!=%%i
)
:lp
set /a m+=1
start "" "D:\Program Files\IrfanView\i_view32.exe" !_%m%! /wall=2 /killmesoftly
if %m% equ %n% set m=0
ping /n 11 127.1>nul&goto lp
[ Last edited by zw19750516 on 2008-5-22 at 10:26 PM ]
作者: tireless     时间: 2008-5-23 08:09
@8 楼
不错。试了,有用。。。如何去掉时间?我是用快捷键来更改的。

[ Last edited by tireless on 2008-5-22 at 12:13 PM ]
作者: bat-zw     时间: 2008-5-23 08:36
批处理怎么用快捷鍵啊
作者: tireless     时间: 2008-5-23 08:58


  Quote:
Originally posted by zw19750516 at 2008-5-22 12:36 PM:
批处理怎么用快捷鍵啊

不是,我是为这个批处理创建个快捷方式,再设置个快捷键。

...我好像明白了,批处理做不到每次运行都顺序选择下一行,只可以在一次运行中顺序选择,或者在每次运行中随机选择,是吗?
作者: HAT     时间: 2008-5-23 09:20


  Quote:
Originally posted by tireless at 2008-5-23 08:58 AM:

不是,我是为这个批处理创建个快捷方式,再设置个快捷键。

...我好像明白了,批处理做不到每次运行都顺序选择下一行,只可以在一次运行中顺序选择,或者在每次运行中随机选择,是吗?

可以在每次运行的时候都向注册表里面写入一个记录
运行之前先去读取这个记录
这样就知道下次运行该选择哪一行了
作者: bat-zw     时间: 2008-5-23 10:01
要做到每次也不是不可以,请楼主参考我这个贴子:http://www.cn-dos.net/forum/view ... light=%2Bzw19750516
作者: tireless     时间: 2008-5-23 10:04
就用随机吧。多谢大家的帮助。

[ Last edited by tireless on 2008-5-22 at 02:09 PM ]