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. header("location:test.php")跳转成功需要注意的

    header("location:test.php")跳转成功除了需要注意以下三点还有一个前提必须要注意: 1.location和":"号间不能有空格,否则会出 ...

  2. EF框架学习手记

    转载: [ASP.NET MVC]: - EF框架学习手记 1.EF(Entity Framework)实体框架EF是ADO.NET中的一组支持开发面向数据的软件应用程序的技术,是微软的一个ORM框架 ...

  3. MySQL 优化之 index merge(索引合并)

    深入理解 index merge 是使用索引进行优化的重要基础之一.理解了 index merge 技术,我们才知道应该如何在表上建立索引. 1. 为什么会有index merge 我们的 where ...

  4. 使用VIM插件ctags来阅读C代码

    说明 Ctags是vim下方便代码阅读的工具.尽管ctags也可以支持其它编辑器,但是它正式支持的只有vim.并且vim中已经默认安装ctags,它可以帮助程序员很容易地浏览源代码:ctags最先是用 ...

  5. Codevs 1025 选菜

    题目描述 Description 在小松宿舍楼下的不远处,有PK大学最不错的一个食堂--The Farmer's Canteen(NM食堂).由于该食堂的菜都很不错,价格也公道,所以很多人都喜欢来这边 ...

  6. redis 下载启动,设置、查询超时时间

    1.定义 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted ...

  7. C++学习笔记【转载】

    转载自:http://www.cnblogs.com/maowang1991/p/3290321.html 1.struct成员默认访问方式是public,而 class默认访问方式是private! ...

  8. 【redis使用全解析】常见运维操作

    作者:gnuhpc 出处:http://www.cnblogs.com/gnuhpc/ 1.1 启动 1.1.1 启动redis $ redis-server redis.conf 常见选项: ./r ...

  9. 大一上学期的一点小疑惑,代码验证ok

    #include<iostream> using namespace std; class test { int *p; int pn; public: test(int n) { p = ...

  10. NOIP2010提高组乌龟棋 -SilverN

    题目背景 小明过生日的时候,爸爸送给他一副乌龟棋当作礼物. 题目描述 乌龟棋的棋盘是一行N个格子,每个格子上一个分数(非负整数).棋盘第1格是唯一的起点,第N格是终点,游戏要求玩家控制一个乌龟棋子从起 ...