作者VElysian (家瑀 致中和)
看板EzHotKey
标题Re: [请问] 如何将同一目录下多个资料夹的档案抓到 …
时间Thu Aug 21 18:54:39 2008
※ 引述《nowanthave (....)》之铭言:
: 因为常常在下载档案时,会一次下载很多个资料夹
: 整理时想要把相同类型的档案放在同一个资料夹
: 手动操作又很花费时间,所以想问看看有没有办法?
: 感谢
用 AutoHotKey 只要 9 行就可以轻易写出来了喔~~
http://www.autohotkey.com/
我写的这个程式可以移动指定副档名的档案,可惜重复档名的档案不会被移动就是了...
安装好 AutoHotKey 之後,新增一个纯文字档,然後将程式码贴上,
另存成 .ahk 档,再点两下执行就可以了。
记得保留这个程式码的作者和来源资讯唷~~
本程式作者: VElysian,发表於 telnet:\\ptt.cc EzHotKey 板
───────────────────────────────────
程式说明:
例如要移动 D:\1 的 txt 档案到 D:\2
1. Win + Q 开始执行
2. 选择档案所在资料夹(如 D:\1)
3. 输入要移动的副档名(如 txt )
4. 选择目标资料夹 (如 D:\2)
5. 操作完成
───────────────────────────────────
程式码如下:
;本程式作者: VElysian,发表於 telnet:\\ptt.cc EzHotKey 板
#Q:: ; Win + Q 开始执行
FileSelectFolder , sourceFolder ,,, 选择档案所在资料夹
InputBox , extension ,, 输入要移动的副档名,,,,,,,, txt
FileSelectFolder , targetFolder ,,, 选择目标资料夹
Loop , %sourceFolder%\*.* , 2 , 1
;Loop 开始,搜寻 sourceFolder 下所有档案
{
FileMove , %A_LoopFileDir%\*.%extension% ,
%targetFolder% ;移动档案
} ;Loop 结束。
MsgBox , 操作完成。
`n`n程式作者: VElysian,发表於 ptt.cc EzHotKey 板
return ; Win + Q 结束
───────────────────────────────────
流程说明:
sourceFolder 变数,存放档案所在资料夹的路径。(如 D:\1)
targetFolder 变数,存放目标资料夹的路径。 (如 D:\1)
extension 变数,存放副档名。 (如 txt )
第一个
FileSelectFolder 会将选择的路径放进
sourceFolder 变数。
第二个
FileSelectFolder 会将选择的路径放进
targetFolder 变数。
InputBox 会让使用者输入副档名,放进
extension 变数。
Loop 会搜寻
sourceFolder 和其子资料夹下所有档案。
然後把符合
extension 的档案移到
targetFolder
───────────────────────────────────
指令说明:
FileSelectFolder
FileSelectFolder , 变数 ,
指定路径,
参数,
显示文字
让使用者选择
指定路径下的资料夹,然後把绝对路径放进
变数中。
如果把绝对路径省略,预设是从我的电脑开始。
参数:
0 没有(预设值)
1 允许新增资料夹
2 0 多了一个输入栏位
3 1 多了一个输入栏位
例如:
FileSelectFolder , myPath , D:\ , 2 , 请选择资料夹
MsgBox , 您选择的路径是
%myPath%
更多资讯:
http://www.autohotkey.com/docs/commands/FileSelectFolder.htm
FileMove
FileMove , 来源路径(支援 *) ,
目标路径 ,
参数
会将
来源路径的档案移动到
目标路径。支援
万用字元 *.*
参数:
0 不覆盖已存在档案(预设值)。
1 覆盖已存在档案。
例如:
FileMove , D:\1\*.txt , D:\2
更多资讯:
http://www.autohotkey.com/docs/commands/FileMove.htm
Loop (档案 & 资料夹)
Loop , 指定路径(一定要用万用字元 *) ,
搜寻条件 ,
是否搜寻子资料夹
{
...有很多变数可以用...
}
会搜寻
指定路径的档案或资料夹。
指定路径一定要使用
万用字元 *.*
搜寻条件:
0 只搜寻档案(预设值)
1 搜寻所有档案和资料夹
2 只搜寻资料夹
是否搜寻子资料夹:
0 只搜寻目前路径下的资讯
1 连子目录下的资料都会搜寻
{...} 中可以用的变数:
A_LoopFileName 档案名称。 如 321.txt
A_LoopFileFullPath 档案路径。 如 D:\1\321.txt
A_LoopFileDir 资料夹路径。如 D:\1
例如:
Loop , D:\1
\*.*
{
MsgBox , 档案名称:
%A_LoopFileName%
}
更多资讯:
http://www.autohotkey.com/docs/commands/LoopFile.htm
InputBox
InputBox , 变数 ,,
显示文字 ,,,,,,,,
预设值
出现一个输入视窗,
显示文字提示要输入什麽东西,输入栏有文字的
预设值。
输入的文字会被放入
变数中。
例如:
InputBox , text ,, 请输入你的名字 ,,,,,,,, 小明
Msgbox , 嗨~~
%text%~~
更多资讯:
http://www.autohotkey.com/docs/commands/InputBox.htm
───────────────────────────────────
教学完毕,希望对你有帮助。 ^_^
--
战略高手 游戏, 数位, 程设 [jzs/lostname
DigitalWare 软体 Σ软体 应用 技巧 [lostname]
EzHotKey 软体 ◎简化复杂工作的快速键软体 VElysian
EzHotKey 主要讨论一种可以把复杂的滑鼠键盘动作变成简单的快速键的软体。
例如:
重复的剪下贴上,或是将滑鼠调整音量的动作简化成只按 +/- 键。
包括:
AutoHotKey、AutoIt、EZScript、VBScript、Windows 批次档。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.62.111.12
※ 编辑: VElysian 来自: 61.62.111.12 (08/21 19:33)
※ 编辑: VElysian 来自: 61.62.111.12 (08/21 19:35)
1F:推 nowanthave:感谢板主的教学^^ 来研究一下 08/21 22:08