Java程序设计的DOS命令基础

用户使用操作系统和软件有两种方式:命令行界面(Command Line Interface,CLI)和图形界面(Graphical User Interface,GUI)。与Unix/Linux下的用户习惯使用命令行(CLI)不同,Windows下的用户习惯使用图形界面(GUI)。一个重大的区别是前者只使用键盘,而后者离不开鼠标。

为什么电影中的黑客几乎绝不用鼠标」的回答中,Parano Yang(知乎)说:

那为什么要远离鼠标呢?这是因为在文本输入密集的编程、系统管理工作中,频繁的在 “使用鼠标” 和 “双手打字” 两种模式切换是一个很恼人的动作。相比之下,若尽量使用键盘的快捷键来完成所有的操作,你只需动动手指头。这样的好处不仅仅节省时间提升工作效率,更是避免被频繁的移动右手而打断了思路。

我一直提倡在Linux下学习编程,但是我们面对的学生是只用过Window的,即使有人买了Macbook也是要把Mac OS换成Windows的。所以基本上所有的Java教材都是以Windows系统为例讲的,介绍点Java程序设计的DOS命令使用基础非常有必要。

在「别出心裁的Linux命令学习法」一文中介绍了命令行的好处,学习方法也可以借鉴。

几个快捷键

就像大家会用了「Ctrl + C」「Ctrl + V」 以后就再也不想回到点鼠标右键再点复制粘贴一样,Windows下有不少快捷键可以提高效率。尽量少用鼠标,最常用的操作使用快捷键是高效使用软件应当养成的习惯。

下面的Windows键指的是CtrlAlt键中间的那个键:

  • Windows键+E:打开资源管理器。

Windows下大家使用,

  • Windows键+R:程序运行

为什么这个组合用的最多?看看「最绿色最高效,用win+r启动常用程序和文档」这篇文章。

  • Windows键+D:转到桌面

对我而言,桌面是临时处理文件的地方,经常需要转到桌面;

  • Windows 键 + L:锁定系统

    这个是要养成习惯的

  • Shift + F10: 显示右键菜单

几个小工具

在「提高教学效率的工具箱」一文中,推荐了作为老师常用的效率工具,其中的EverythingPowerCMD推荐给学习Java的同学们使用。

更多工具参考「程序开发与信息安全工具箱」。

DOS命令基础

DOS命令分为内部命令、外部命令、以及批处理文件。内部命令常驻内存,而外部命令是一条单独的可执行文件,而批处理类似Linux下的Shell脚本。

内部命令在都在COMMAND.COM中;外部命令存放在磁盘上,是以.exe结尾的文件;批处理文件以.bat结尾的文件。

注意几个小技巧

  • tab:补全命令、目录、文件名等
  • F7:查看并快速执行用过的命令,类似Linux下的history命令,非常有用。也可以使用上下键切换。
  • /?:查找命令的帮助文档,类似Linux下的man命令。
  • .: 表示当前目录
  • ..:表示父目录
  • /:表示根目录
  • X::盘符切换

常用DOS命令

Windows 7后的操作系统,按一下Windows键Windows键+R,然后输入cmd就会打开命令行窗口,如下图所示:

当然,这个命令行窗口非常不好用,在课上我们会使用PowerCMD,界面如下:

打开命令行窗口后就可以学习和使用DOS命令了,我们常用的命令如下:

  • dir: 列出当前目录下的文件以及文件夹
  • md: 创建目录
  • rd: 删除目录
  • cd: 进入指定目录
  • del: 删除文件
  • copy: 复制文件
  • xcopy: 复制目录
  • tree: 列出目录树
  • ren: 文件改名
  • type: 显示文件内容
  • cls: 清屏
  • exit: 退出DOS命令行

环境变量

不管是初学Java编程,还是Java程序设计老手,都要设置环境变量,为此,不少习惯于VC编程的同学还觉得学习Java门槛高。

比如我们要使用javac命令编译*.java程序时,首先我们要知道javac.exe安装在什么位置,查找神器Everything 这时候就起作用了,输入javac.exe,立马就找到javac.exe的在路径D:\Development\jdk\bin下,如下图所示:

当我们使用javac.exe的绝对路径来编译Java程序时是不需要环境变量的,如下图:

为什么要设置环境变量? 我们就想使用javac HelloWorld.java来编译,但系统不知道去哪找javac.exe时,就要用到环境变量中的PATH了

一般我们在命令行窗口中输入xxx时,系统默认在command.com中查找xxx,如果找不到会在在当前目录中查找有没有xxx.exe,如果有就执行xxx.exe,如果找不到会在在当前目录中查找xxx.bat,如果有就执行xxx.bat,如果找不到会在PATH指定的路径中依次查找xxx.exexxx.bat,如果都找不到,就会出现下面的报错:

一般而言,课堂(网络,图书)上总会讲两种环境变量的设置方法:

  • 使用SET命令编辑一个批处理文件(或者添加到autoexec.bat文件中)

命令格式:SET [variable=[string]],其中variable 指定环境变量名称,string 指定要指派给变量的一系列字符。比如:

 SET  JAVA_HOME=d:\javadev\jdk;   

注意:仅仅键入SET而不加参数,可以显示系统所有的环境变量,这些变量可以在程序设计和BAT编程中使用。

  • 如果是在Win2000,XP操作系统下,使用鼠标右击「我的电脑」,选择属性->高级->环境变量->系统变量->新建,变量名:JAVA_HOME 变量值:d:\javadev\jdk。Windows 7中是鼠标右击「计算机」,选择属性->高级系统设置->环境变量->系统变量->新建

按照第二种方式,我们通过cmd命令打开DOS窗口时,就有了设定的环境变量。

问题是,随着工具、语言等(版本控制、单元测试、自动化、perl、python、ruby......)越来越多,要设置的环境变量也越来越多,如果重装机器,使用第二种环境变量的添加方式很是烦人,这本身也是个重复的过程。有什么好办法吗?其实环境变量在注册表中放在:HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment,如果各种工具安装位置不变(个人或团队都应该有个规范,不宜变来变去),我们把环境变量节点导出即可(按一下Windows键Windows键+R,然后输入regedit打开),日后只要双击一下该文件,就可恢复所有环境变量,当然,修改环境变量进最好也这么备份一下。


欢迎关注“rocedu”微信公众号(手机上长按二维码)

做中教,做中学,实践中共同进步!



如果你觉得本文对你有帮助,请点一下左下角的“好文要顶”和“收藏该文


Java程序设计的DOS命令基础的更多相关文章

  1. Java实现操作dos命令

    java实现操作dos命令的两种方式 1.读取文件中的命令 package com; import java.io.InputStream; public class cmd { public sta ...

  2. Windows的DOS命令基础

    Windows的DOS命令基础 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 1.dir: 查看当前路径下的目录(directory)详细信息 . 详细信息: a>.dir ...

  3. [转载]java调用本地dos命令

    在社区看到java调用本地dos命令的代码,特贴出来 String command = "ipconfig"; Runtime run = Runtime.getRuntime() ...

  4. Java预科:DOS命令及电脑快捷键

    Java预科:DOS命令及电脑快捷键 1.快捷键 常用快捷键 a/t +f4关闭窗口 cmd窗口打开快捷方式 1.开始+系统+命令提示符 2.win+r 输入cmd 3.在任意文件夹下面,按住shif ...

  5. Java入土---基本DOS命令

    基本DOS命令 打开cmd方式 开始+系统+命令提示符 win+R,输入cmd 在任意文件夹下,按住shift + 右键,打开命令行窗口 资源管理器里打开 常用DOS命令 盘符切换 E: dir命令查 ...

  6. DOS命令基础,包涵DOS库说明书

    20种常用的DOS命令小结 作者: 字体:[增加 减小] 类型:转载   DOS命令总共大约有一百个(包括文本编辑.查杀病毒.配置文件.批处理等),我们这里详细介绍二十个常用的DOS命令     先介 ...

  7. DOS命令基础

    DOS命令 打开CMD win+R,输入cmd. 桌面任何地方按住shift+鼠标右键 ,点击powershell. 我的电脑文件路径前cmd+空格. 开始+系统. 关闭CMD alt+空格+C. 常 ...

  8. 在Java控制台模拟dos命令下操作MySQL

    一.导入mysql的驱动:"com.mysql.jdbc.Driver", 必须将mysql的驱动 包(jar文件)导入到本工程中. Class.forName("com ...

  9. 《Java程序设计》 课程教学

    <Java程序设计> 课程教学 给学生 考核方式 100分构成 翻转课堂考核12次(5*12 = 60):每次考试20-30道题目,考试成绩规格化成5分(比如总分20分就除以4) 注意:不 ...

随机推荐

  1. 别再TM跟我说找不到满意的工作!

    上一篇老徐跟大家分享:如何判断自己在这家公司是否有成长? 今天只想跟大家说几个真是案例:别再TM总抱怨说找不到满意的工作 说明:如下案例,针对老徐当前的软件测试职业,其他职业可自己脑补--- / 1 ...

  2. python 打印对象的所有属性值

    def prn_obj(obj): print '\n'.join(['%s:%s' % item for item in obj.__dict__.items()])

  3. C++自定义修饰键,实现如<Capslock+J>等组合键的按键映射

    前:所谓修饰键,就是Ctrl,Alt,Shift,Win这些按键. Update: 我使用AHK写了一个功能更丰富的脚本:https://github.com/h46incon/ModifierCus ...

  4. PostgreSQL模仿Oracle的instr函数

    -- -- instr functions that mimic Oracle's counterpart -- Syntax: instr(string1, string2, [n], [m]) w ...

  5. jquery 基础教程[温故而知新二]

    子曰:“温故而知新,可以为师矣.”孔子说:“温习旧知识从而得知新的理解与体会,凭借这一点就可以成为老师了.“ 尤其是咱们搞程序的人,不管是不是全栈工程师,都是集十八般武艺于一身.不过有时候有些知识如果 ...

  6. 无法连接到WMI提供程序 三种解决办法

    无法连接到WMI 提供程序 请注意,你只能使用SQL Server 配置管理器来管理SQL Server 2005服务器.找不到指定的模块.[0x8007007e] 解决方案1: 检查一下 windo ...

  7. x01.Game.CubeRun: 风一样的女子

    1.题解 小孩学英语比较有意思,Monkey three => 猴三,风一样的女子 => 风 Girl.诸如此类不是重点,重点是一花一世界,一草一天堂.花花草草,纷纷扰扰.大千世界,当别具 ...

  8. KVM 介绍(1):简介及安装

    学习 KVM 的系列文章: (1)介绍和安装 (2)CPU 和 内存虚拟化 (3)I/O QEMU 全虚拟化和准虚拟化(Para-virtulizaiton) (4)I/O PCI/PCIe设备直接分 ...

  9. [转]Linq中使用Left Join

    本文转自:http://www.cnblogs.com/xinjian/archive/2010/11/17/1879959.html use Test Create table Student( I ...

  10. SpringMVC从入门到精通之第三章

    上一章节中首先讲解前端控制器DispatcherServlet的配置包括加载springmvc文件.拦截什么样的请求等还有两个组件:分别是适配器和映射器(另外再补充一组) 非注解的处理器映射器 处理器 ...