[AHK]如何以当前日期为目录名新建目录

    xiaoxiao2021-12-14  15

    用户需求:新建一个文件夹,名称自动以月份和日期命名,如12-02,如已经有这名字的文件夹,则用12-02a......类推

    实现:

    #z:: d =%A_MM%-%A_DD% FileCreateDir, d:\%d% Sleep,200 run d:\%d% return

    用户反馈:可以新建一个,不能第二个,还有,只能在D盘下,要能在当前窗口的路径下 在当前目录下新建日期目录 #z:: Send,!d ControlGetText,foldername,Edit1,A d=%A_MM%-%A_DD% d=%foldername%\%d% FileCreateDir, %d% Sleep,200 run %d% return 做一次同名目录存在检测 #z:: Send,!d ControlGetText,foldername,Edit1,A d=%A_MM%-%A_DD% d=%foldername%\%d% if InStr(FileExist(d), "D") { ;已存在同名目录 d=%d%_a } FileCreateDir, %d% Sleep,200 run %d% 这个变量d建议改个名字

    #z:: Send,!d ControlGetText,当前目录,Edit1,A 目录名=%A_MM%-%A_DD% 最终目录名=%当前目录%\%目录名% if InStr(FileExist(最终目录名), "D") { ;已存在同名目录 最终目录名=%最终目录名%_a } FileCreateDir, %最终目录名% Sleep,200 run %最终目录名% return 吐槽:不支持AutoHotkey代码高亮,来个截图,能看得清楚点:

    实现用户需求版 #z:: Send,!d ControlGetText,当前目录,Edit1,A 目录名=%A_MM%-%A_DD% 最终目录名=%当前目录%\%目录名% 临时目录名=%最终目录名% while InStr(FileExist(临时目录名), "D") { 后缀:=Chr(96+A_index) 临时目录名=%最终目录名%_%后缀% } 最终目录名=%临时目录名% FileCreateDir, %最终目录名% Sleep,200 run %最终目录名% return

    用户反馈:在桌面新建时跑到C盘了,另外可以不要弹出新窗口吗?

    最终版 #z:: 当前目录:= A_Desktop WinGetClass class, ahk_id WinExist("A") if (class ~= "(Cabinet|Explore)WClass") { Send,!d ControlGetText,当前目录,Edit1,A } 目录名=%A_MM%-%A_DD% 最终目录名=%当前目录%\%目录名% 临时目录名=%最终目录名% while InStr(FileExist(临时目录名), "D") { 后缀:=Chr(96+A_index) 临时目录名=%最终目录名%_%后缀% } 最终目录名=%临时目录名% FileCreateDir, %最终目录名% ;~ Sleep,200 ;~ run %最终目录名% return

    转载请注明原文地址: https://ju.6miu.com/read-965675.html

    最新回复(0)