让DOS窗口无处不在

经常和DOS命令行接触的朋友都知道,每次启动命令行时,命令提示符默认的是系统盘的根目录,如果你需要进入一个多层次的子目录时,就会
觉得十分痛苦:你需要不停地用CD命令进行目录切换,非常麻烦,而且如果遇到长文件名或中文目录名时就更容易出错了。有没有好的方法能在需要的目录路径里产生一个DOS命令行呢?答案是
肯定的,使用Powertoys等一类软件就可以
轻松实现,但本文介绍的不是使用软件的方法,
而是几种“徒手”方法,希望能给大家提供另外一种解决问题的思路。 

  几种方法,都是通过这种途径解决问题:如果需要在某个文件夹中使用命令行,只需要在Windows资源管理器图形界面中选择该文件夹时右击鼠标并选择相应的命令即可执行(名字可以根据需要自己起),不必通过层层目录切换进入。下面具体介绍一下实现方法。  

导入REG文件法

  

  打开记事本,在文本中输入以下内容,尽量避免输入错误:

  Windows Registry Editor Version 5.00  

  [HKEY_CLASSES_ROOT
Directoryshellcmd]

  @="在这里打开命令行窗口"

  [HKEY_CLASSES_ROOTDirectoryshell

  cmdcommand]

  @="cmd.exe /k "cd %L""

  注意两段话中间必须有一空行,格式如图1所示,输入完成后另存为“在此使用命令行.reg”文件。保存方法是,选择记事本“文件”菜单中的“另存为”命令,在图2所示的对话框中,将保存类型选择为“所有文件”,在“文件名”中输入“文件名.扩展名”的形式后保存。随后双击运行这个reg文件进行导入,待导入完成后,再找一个深层的文件夹右击,怎么样,是不是出现“在此使用命令行”的选项?

  修改注册表法  

  在“开始” “运行”中输入“Regedit”后回车,打开注册表编辑器,依次定位到“HKEY_CLASSES_ROOTFol-dershell”主键,然后在shell项上单击鼠标右键,选择“新建” “项”,将新建的项命名为“MS-DOS”。接着在刚建好的“MS-DOS”键上单击鼠标右键,选择“新建” “项”,将新建的项命名为“command”;然后选择此command子键,在注册表编辑器的右侧窗口中,双击名称下的“默认”,在数值数据中输入DOS命令行所在的目录,由于笔者使用的是XP系统,所以填写“d:windowssys-tem32cmd.exe”(如图3,大家可以根据自己的实际情况进行填写),然后点击“确定”,关闭注册表编辑器。下面测试一下,进入Windows资源管理器D盘中的Tools目录后,右击并选择“MS-DOS”命令,就出现了“D:Tools〉”。
  安装INF文件法  

  安装INF文件,可以达到同样的效果。下面打开记事本文件,输入以下代码:

  [version]

  signature="$CHICAGO$"  

  [CmdHereInstall]

  CopyFiles = CmdHere.Files.Inf

  AddReg = CmdHere.Reg  

  [DefaultInstall]

  CopyFiles = CmdHere.Files.Inf

  AddReg = CmdHere.Reg  

  [DefaultUnInstall]

  DelFiles = CmdHere.Files.Inf

  DelReg = CmdHere.Reg  

  [SourceDisksNames]

  55="CMD Prompt Here","",1  

  [SourceDisksFiles]

  CmdHere.INF=55  

  [DestinationDirs]

  CmdHere.Files.Inf = 17  

  [CmdHere.Files.Inf]

  CmdHere.INF  

  [CmdHere.Reg]

  HKLM,%UDHERE%,DisplayName,,"%CmdHereName%"

  HKLM,%UDHERE%,UninstallString,,"rundll32.exe syssetup.dll,SetupInfObjectInstallAction DefaultUninstall 132 %17%CmdHere.inf"

  HKCR,DirectoryShellCmdHere,,,"%CmdHereAccel%"

  HKCR,DirectoryShellCmdHerecom-

  mand,,,"%11%cmd.exe /k cd ""%1"""

  HKCR,DriveShellCmdHere,,,"%CmdHereAccel%"

  HKCR,DriveShellCmdHerecommand,,,"%11%cmd.exe /k cd ""%1"""  

  [Strings]

  CmdHereName="CMD Prompt Here PowerToy"

  CmdHereAccel="CMD &Prompt Here"

  UDHERE="SoftwareMicrosoftWindows

  CurrentVersionUninstallCmdHere"  

  注意各段代码之间必须有空行,必须严格按照上文的格式。输入完后另存为CmdHere.inf文件。随后右击该文件,选择“安装”命令(图4),这样就为鼠标右键添加了一个CMD Prompt Here的命令。注意:本法适用于,WinNT/XP/2003等操作系统,如果使用的是Win9X或WinMe系统时,需要将上面的Windows NT替换成CHICAGO。

时间: 2024-12-22 14:21:42

让DOS窗口无处不在的相关文章

mysql在本地dos窗口进入有户名密码验证问题

问题描述 mysql在本地dos窗口进入有户名密码验证问题 本机dos进入MySQL,命令:mysql -h 127.0.0.1 -u root -p 输入密码的时候,随便输入任何密码都能通过验证,为什么,求大神解答 解决方案 怎么可能呢?估计是你把错误提示当验证通过了吧.或者你的root根本没有密码 解决方案二: 问题已经自己解决了,谢谢

c语言怎样运行的时候隐藏dos窗口

问题描述 c语言怎样运行的时候隐藏dos窗口 c语言怎样运行的时候隐藏dos窗口,求代码,谢谢 解决方案 如何隐藏运行窗口(c语言)蚁群算法 C语言程序(已运行)如何在DOS窗口下运行PHP文件 解决方案二: 1.调用system("start /b ping 10.10.10.11 -t"); 2.做成后台服务 解决方案三: #include <windows.h> int main(int argc,char *argv[]) { ShowWindow(FindWind

ftp-Windows的DOS窗口FTP登录redhat Linux老是提示未连接

问题描述 Windows的DOS窗口FTP登录redhat Linux老是提示未连接 本人菜鸟一个,在用Windows的DOS窗口FTP登录redhat Linux老是提示未连接,是这样显示的,我服务器地址是192.168.207.130,而且进去之后,也没让输入账号密码 究竟是怎么回事?急求 解决方案 能ping通不一定能连ftp,检查下端口.防火墙还有ftp服务本身有没有启动.用cuteftp flashfxp之类的软件先连下,看看能不能连上. 解决方案二: 可能是ftp服务没有启动 解决方

windows service 程序的输出信息如何显示到dos窗口

问题描述 windows service 程序的输出信息如何显示到dos窗口 我创建了一个Windows的服务程序,其中写了一些调式的日志信息,现在在服务启动运行的时候想让日志信息在dos窗口显示出来,让我能看到调式的结果,应该怎么调用? Windows service程序是不是可以显示dos窗口? 解决方案 写日志文件或用Debug.WriteLine输出,用DegbuView工具查看.可参考:http://blog.csdn.net/fengyily/article/details/2281

dos窗口下oracle 查询用户表名乱码问题。

问题描述 dos窗口下oracle 查询用户表名乱码问题. DOS窗口下用SQLPLUS远程登陆oracle数据库 运行select *from tab语句输出所以表名,但是有的表名乱码了. 怎么才能使其不乱码,求解决办法? 解决方案 那不是乱码,BIN$....这些表都是在各种oracle操作中产生的表. 解决方案二: 那是系统表,不是乱码,select * from user_tables看看结果

java-eclipse可以运行的程序在Dos窗口下出现好多不明的错误

问题描述 eclipse可以运行的程序在Dos窗口下出现好多不明的错误 源代码如下 package ch1; //import java.io.*; public class TestEx{ public void m(int i_int) throws ArithmeticException{ if(i_int==0) throw new ArithmeticException("被除数为零"); } public static void main(String[] args){ /

【Java编程】Java在dos窗口编译与执行的批处理

       最近在Java编程过程中,常用到dos窗口对程序进行编译与运行.但是不方便之处在于每次都要输入命令进入将要编译的程序的目录(其实也有简单的方法,在文章末尾给出).于是编写了一个配置文件,可以一次修改,经常使用.(只需要在下面程序中将路径修改为你所经常存放程序的目录).前提当然是你已正确配置环境变量.具体方法为:将下面的程序放在新建的文本文件中,并将后缀名改为.bat.然后双击该文件,按提示操作即可!程序源码如下:(红色字体是需要根据你的存放路径修改的) echo off cls t

MySQL---数据库从入门走向大神系列(三)-修改数据库编码/DOS窗口编码

如何查看与修改数据库的编码,如何修改dos窗口的显示编码,都在本篇详细讲解. 查看当前数据库的编码: show variables where variable_name like 'character%'; 如果出现了中文乱码,我们只要看: character_set_client -客户端的编码 character_set_connection -连接的编码(传输时的编码) character_set_results - 最后的输出编码 只要保证这三个编码是相同的,且编码集有中文,中文就不会

DOS窗口cmd中显示UTF-8字符的解决方法

在一个包含了中文字符的.sql文件,我们在Eclipse属性中看到是UTF8编码的,如下图所示, 但是当在Windows控制台中查看这个文件(为了方便,我将文件拷贝到桌面了)的时候,就是乱码了: C:\Users\002778\Desktop>type abc.sql USE Abc; INSERT INTO `School` VALUES(1,'??浜?ぇ瀛Α?'??浜??涓??虫????澶ц?7??,'01062752114','???╁??),(2,'娓???澶у?','??浜??娴锋??