1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > [AHK]在当前目录中运行DOS命令行--DosHere

[AHK]在当前目录中运行DOS命令行--DosHere

时间:2021-01-28 04:09:46

相关推荐

[AHK]在当前目录中运行DOS命令行--DosHere

win10中在当前目录中运行DOS命令行的常规办法:

方式1:点击资源管理器地址栏,按Ctrl+L热键,输入cmd。

方式2:按住shift 点击鼠标右键,点选在此处打开Powershell窗口。

AHKer的解决办法(热键直达,简洁明了,且还支持Totalcmd):

更新版本推荐使用:

/*作者:sunwind1576157日期:12月8日最新版地址:/liuyukuan/article/details/103413873热键:ctrl+alt+t功能:在当前目录,进入到DOS命令行界面原理:利用Explorer支持的热键,利用TC支持的内部命令*/^!t::OutputText:=""WinGet, OutWindowID, id, AWinGetClass, OutClass, ahk_id %OutWindowID%if (OutClass in "ExploreWClass,CabinetWClass"){send ^lcontrolclick,Edit1,acontrolsettext,Edit1,cmd,asend {enter}}if (OutClass ="TTOTAL_CMD"){PostMessage 1075,511,0,,ahk_class TTOTAL_CMD }return

老版本复杂些:

/*作者:sunwind1576157日期:12月6日最新版地址:/liuyukuan/article/details/103413873热键:ctrl+alt+t功能:在当前目录,进入到DOS命令行界面原理:分别从Explore或TotalCommander获取当前目录*/^!t::OutputText:=""WinGet, OutWindowID, id, AWinGetClass, OutClass, ahk_id %OutWindowID%if (OutClass in "ExploreWClass,CabinetWClass"){OutputText:=getExplorer()}if (OutClass ="TTOTAL_CMD"){OutputText:=getTcFolder()}Run, %ComSpec%, %OutputText%returngetTcFolder(){ClipSaved:=ClipboardAllclipboard =SendMessage 1075,2029,0,,ahk_class TTOTAL_CMDClipWait,2OutDir=%clipboard%Clipboard:=ClipSavedClipSaved=return OutDir}getExplorer(){loop,9{ControlGetText, folder, ToolbarWindow32%A_Index%, ahk_class CabinetWClass} until (InStr(folder,"地址"))folder:=StrReplace(folder,"地址: ","")Switch folder{Case "桌面":;~ folder:= A_Desktopfolder:= getSpec("Desktop")Case "视频","库\视频":folder:= getSpec("My Video")Case "图片","库\图片":folder:= getSpec("My Pictures")Case "文档","库\文档":;~ folder:= A_MyDocumentsfolder:= getSpec("{F42EE2D3-909F-4907-8871-4C22FC0BF756}")Case "音乐","库\音乐":folder:= getSpec("My Music")Case "下载":folder:= getSpec("{7D83EE9B-2244-4E70-B1F5-5393042AF1E4}")Case "收藏":folder:= getSpec("Favorites")Case "OneDrive":folder:= getSpec("{24D89E24-2F19-4534-9DDE-6A6671FBB8FE}")Case "此电脑","回收站", "网上邻居", "控制面板", "我的电脑","快速访问":folder:="c:\Windows";Default 默认就是folder本身无需转换。}return folder}getSpec(str){Loop, Reg, HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders, KVR{if a_LoopRegType = keyvalue =else{RegRead, valueif ErrorLevelvalue = *error*}if (a_LoopRegName=str)break}Transform,dir,Deref,%value%return dir/*TemplatesStart MenuStartupSendToRecentProgramsPersonalPrintHoodNetHoodMy VideoMy PicturesMy MusicLocal AppDataHistoryFavoritesDesktopCookiesCacheAppData*/}

=================其它办法=================

文件夹添加右键DOS快捷入口

1.自带的方法

win7:

按住shift键然后右键点击文件夹,菜单里会出现“在此处打开命令窗口”一项,其实就相当于在当前位置打开Dos窗口,这个是系统自带的。

winxp:

打开“我的电脑”,点击菜单中的“工具”-“文件夹选项”,选择“文件类型”,找到“(无)资料夹”,点“高级”,“新建”,在“操作”中填入 “DOS快速通道”(这里可以随便填),“用于执行操作的应用程序”中填入“cmd.exe /k cd %L”(这个是关键),确定即可。

2. reg文件导入注册表方法

winxp 中的右键DOS命令菜单:

将以下内容复制到文本文档中,重命名为DosHere.reg,双击导入注册表即可,此时会出现

“Dos Here”命令(方便进入DOS窗口);你可以把其中的"DOS Here"改成自己想看到的名字;

Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT/Directory/shell/cmd] @="DOS Here"[HKEY_CLASSES_ROOT/Directory/shell/cmd/command] @="cmd.exe /k /"cd %L/""

win7 中的右键DOS命令菜单:

Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\Folder\shell\Open_DOS_Box]@="[进入DOS]"[HKEY_CLASSES_ROOT\Folder\shell\Open_DOS_Box\command]@="cmd.exe /s /k pushd \"%V\""

将要修改的内容保存在一个后缀名为.reg的文件中,双击执行就可以了。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。