what,why,how
从是什么,为什么,怎么做(具体实际操作)来学习把握。
场景1:
(逢年过节时候)
-七大姑八大姨问:超子,你现在在做什么工作啊?
-我:干软件工程师。(心想说java,亲戚肯定听不懂)
-七大姑八大姨又追问:那什么是软件啊?(搞得跟面试官一样)
-我:就你手机的微信、抖音,我就是做那个的。(细说软件定义,肯定又是听天书,对牛弹琴)
-七大姑八大姨笑着说:哦!?合着是做高科技的啊?!
-我笑笑笑不说话...
以上只是段子。
如果面试官问你什么是软件呢?
那么你应该回答:软件=数据结构+算法。这是图灵奖获得者、pascal语言之父尼克劳斯·沃斯(Nicklaus Wirth)的名言。
说穿了,软件就是服务用户,实现功能,提供便捷的虚拟物件。数据结构是承载数据的容器。算法是程序的灵魂,是程序执行需要遵守的规则。
而java只是软件编写的语言之一,和中文、英文、日语、法语没有本质区别。
场景2:
假设1年后,你进入了企业负责java服务器开发工作,那么你一定会使用命令行模式CLI(command line interface),比如使用Linux操作系统的终端命令,该系统开源免费且效用良好,多受企业青睐。开发者使用较多,偏向底层操作。
而与之相对的是图形化界面GUI(graphical user interface),比如windows11,windows10,win8,win7,winxp。交互简单,用户使用较多,集成了图形化操作。
一句话概括:linux精确,用作生产力。 windows直观,娱乐服务用户。
场景3:
DOS命令:
waht是什么。DOS全称:Disk Opearting System,磁盘操作系统。它是由微软公司Microsoft在windows之前推出的1个操作系统,最终被售卖给了IBM公司。比尔盖茨的妈咪是IBM的董事。(比尔盖茨是微软的创始人。董事相当于投资人。)
why:为什么学习DOS。(1)有助于理解计算机底层(2)有助于学习Linux,今后工作进行企业级别开发快速上手。(如果专攻前端或者客户端开发,那么可以略过)。
实践操作部分:
提问形式:
问题1:Windows10系统中,如何进入DOS命令行呢?
答:(1)同时按住win+r,可打开运行窗口(2)在运行窗口打开处键入“cmd”,按下回车确认,即可进入DOS命令行。又被戏称为黑窗口。
DOS显示内容释义:
(1)Microsoft Windows [版本 10.0.19045.3996]
(c) Microsoft Corporation。保留所有权利。
表示计算机的操作系统版本是windows10.0... 该操作系统是Microsoft微软公司的著作权所有。
(2)C:\Users\DELL>
表示当前工作路径是:c盘下目录User\DELL
可以推断出该计算机的用户叫DELL,该计算机很可能是DELL品牌。或者使用者的名字叫DELL戴尔。
提问2:DOS命令行中,常见的指令有哪些?
答:(1)当前工作目录的改变。进入和回退目录。(2)增加操作,删除操作,读取操作,写入操作。操作的对象可以是目录,也可以是文件。(3)其他指令,比如自动关机shutdown,计算机网络相关指令ipconfig, ping, arp, dns。
常用的指令:
指令1:盘符切换
要点小结:
(1)从C盘切换到E盘。键入指令:E:。(小写e: 也可以切换。大小写不敏感。)冒号:不要漏掉。否则键入“C”则会提示信息:‘c’不是内部或外部命令,也不是可运行的程序或批处理文件。
说人话:命令错了,计算机识别不了这个命令。
(2)DOS初始化,c盘的默认路径是:c盘\User\用户名(不同的计算机一般不同)。从c盘切换到E盘,再键入“C:”默认回到C盘停留的路径。
(3)键入指令:F:,提示信息:系统找不到指定的驱动器。
说人话:命令答对了,但是没有F盘。
那么问题来了,我在DOS中该如何得知有哪些盘呢?前提是我不想使用图形化界面去“我的电脑”点点点。我总不能从A到Z一个个键入“A:”到“z:”去暴力尝试得知吧?
(1)
键入命令:wmic logicaldisk get name。//释义 wmic是1个指令家族。通常用作查询系统信息,管理服务、进程。logicaldisk是逻辑上的磁盘 get name是获取显示逻辑上的磁盘名字。
WMIC(Windows Management Instrumentation Command-line)是Windows管理规范(WMI)的命令行接口,它提供了一个强大的工具,允许用户通过命令行或批处理脚本来执行系统管理任务。WMIC极大地简化了WMI的使用,使得不熟悉C++、VBScript等编程语言或WMI名称空间基本知识的用户也能轻松管理系统。
在linux系统中,存在1个根目录,根目录可以包含类似windwos系统C,D,E,F,G这些磁盘。在根目录下键入ll或者ls可以显示其包含的文件和路径信息。
而在windows系统中,存在1个指令dir,其功能类似ll或者ls的命令,但是不存在根目录。因为无根目录,所以DOS无法返回c盘上一层去查看列举所有的盘符。
指令2:dir
指令dir全称directory表示目录。
DOS显示结果释义:
C:\Users\DELL的目录
2024/08/08 00:35
2024/08/08 00:35
2024/03/11 22:59 960 .bash_history
...
从左到右,每列的含义:
目录(或文件)创建的时间年月日 文件类型
.表示当前目录。
..表示当前目录的上级目录。
当前目录C:\Users\DELL下有6个文件,28个目录。6个文件大小一共XXX字节。28个目录一共XXX可用字节。
“可用字节”指的是在当前磁盘分区上剩余的可供文件存储的空间量。
在这个例子中,9,815,879,680 可用字节意味着在你的C盘(通常是系统盘)上还有大约9.82GB(Gigabytes)的空间可以用来存储新的文件或文件夹。
可用字节=剩余空间。
字节B是计算机中最小的存储单位。一般来说,生活中说手机本地一首歌曲几兆MB,一款音乐软件几十兆MB,一款小型单机游戏几百兆MB,一部蓝光超清电影几吉G,一款大型网络游戏即几十吉G,一款通用人工智能模型参数大小几百吉G,一个固态硬盘几百吉G,一个机械硬盘1TB...
类似毫米,厘米,分米,米,千米,万米,光年。
指令3:cd
问题来了:当我已知1个目标目录时候,我如何高效的进入该目录呢?总不能dir,1层目录1层目录进入吧?
答:键入指令:cd+目录名全称。
cd全称change directory。
示例:目标目录C:\Users\DELL\排序算法cplus\八皇后问题。
中途键入tab补全路径
方向键↑可以快速回溯之前键入回车执行的指令
指令4:md和rd
增加目录操作。md+目录名。
删除目录操作rd+目录名。(如果目录内有数据,则删除失败)
md全称:make directory
rd全称:remove directory
指令5:type和echo
新建文件指令:type nul>文件名.后缀名
写入内容到文件指令:echo ‘内容’ >文件名
显示文件内容指令:type 文件名.后缀名
删除非空目录的情况:
遇到的问题:无法直接删除非空目录
尝试删除目录testDOS
|
方法1:
删除testTXT.txt后再删除目录testDOS。
使用del指令。
del c:\Users\DELL\go\testDOS\testTXT.txt
rd c:\Users\DELL\go\testDOS
方法2:
如果testDOS中文件数量较多,可以强制删除testDOS。
键入指令:rd /s /q c:\Users\DELL\go\testDOS
注意要点:如果要删除目录testDOS,那么在testDOS目录中执行指令:rd /s /q c:\Users\DELL\go\testDOS会提示“另一个程序正在使用此文件,进程无法访问”。
需要将当前工作目录跳转到非删除目录。
说人话:穿越者的祖父悖论。你不能自己删自己。如果删了自己的话,那么当前工作目录为空?计算机会很难办的。
其他操作:
cls清空当前dos输出控制台内容。cls全称:clear
exit退出命令提示符窗口。
左箭头←,右箭头→移动光标。
上箭头↑,下箭头↓调出历史操作指令。
Delete和backspace删除字符。delete从右往左删除。backspace从左往右删除。
del+文件名。删除文件。del全称:delete
del .txt删除当前路径下所有以.txt结尾的文件。号表示通配符。