震惊且免,本文按逆序讲解实现的原理如何实现

如何实现

1.设置系统的环境变量。将桌面加入环境变量。即将下列两者加入环境变量:

个人桌面: C:Users你的用户名Desktop;

公共桌面: C:UsersPublicDesktop;

你的用户名可以通过进入C:Users目录下找寻。设置环境变量的方法请百度。

2.打开控制台,可以对小娜输入CMD,在其中输入TIM.lnkQQ.lnk即可

即可得到封面结果。

实现原理

兴致缺缺者请绕道。

哭送离去者。余下有志者继续。

CMD

打开CMD后,你会看到来自微软公司的内敛与孤高,两行文字,一行简述版本,另一行说明所有权。余下全是黑框。什么都没说,但什么都在其中了。大部分人对厉害程序员的印象,应该就来自于这类界面了。

CMD,command缩写,又名控制台,命令提示符。众所周知Windows之所以叫Windows就是因为它的图形化界面。最早的计算机是没有图形化界面的。那时候人们就只能对着黑框交互。Windows设计了图形界面,但也保留了当时的黑框交互界面,这就是CMD。

所以,理论上来说,Windows点击能完成的一切都可以通CMD完成。或者说Windows就是用鼠标移动、点击封装了CMD也不为过。

例如下边这条CMD命令实现了30S之内关机。

shutdown -s -t 30

下边这条命令打开一个位于桌面名叫QQ.lnk的快捷方式。

C:UsersPublicDesktopQQ.lnk

值得注意的是CMD的输入是大小写不敏感的,因而你可替换成qq.lnk。但打开的前提是桌面必须有对应文件。

你也可以用这种方式随便打开自己电脑上任何一处文件。尝试拖动一个文件到cmd中试试,你会获得它的绝对路径。

环境变量

系统中有太多目录,多到难以记忆。我并不想每次打开QQ或者其他软件都要把一长串目录输入。

很自然地,微软为我们提供了设置环境变量的方法。例如上图中我将OneDrive设置为了环境变量,把一个目录赋值给了这个名称。

在资源管理器中输入OneDrive,打开的其实是其对应的真实目录。

下列CMD命令可以切换目录到OneDrive目录下。前提是你电脑设置了OneDrive变量。

cd %OneDrive%

因而你可以这样来快速打开应用:

1.设置一个常用目录为一名称,如下代码,set命令设置的环境变量退出此CMD时就失效,setx为永久设置

set 游戏=D:Game
setx 游戏=D:Game

设置完之后,查看一下:

2.按如此方式打开游戏。建议把自己电脑上的全部游戏的快捷方式(.lnk)放到这儿。

%游戏%你想要执行的游戏名称

3.炫酷地向朋友秀一下吧~

环境变量-path

环境变量中有一个很重要的部分就是path:路径。微软公司如此考虑,虽然可以通过设置环境变量,把一串串长长的名字改成几个字符表示,但麻烦还是不少。我能不能让用户干脆不用输入目录呢?

这是可以的。用户直接给一个文件名称,例如如下

TIM.lnk

CMD会自动在当前目录(即每次你输入命令前的那个目录)寻找这个文件,如果找不到的话,就是在path提供的目录下依次寻找。

点击编辑Path之后的结果

当然,你需要注意一点,每次CMD打开时会立即读取Path,修改Path之后,要重新打开CMD新的Path才会生效。

你可以用这条语句设置Path

set PATH=%PATH%;C:/XXX

More

了解了CMD-环境变量-path这套体系我们已经可以干相当多的事情。但这件事情就像不皲手膏一样,发挥出什么作用,看你怎么用。

其中一个很重要的例子就是将CMD当作与系统交互的桥梁(系统的API),执行简单的开机命令。实际上,每个语言都会有内置的与CMD交互的模块。

以最简单的Python为例:

import 

以此,可以实现在一个应用中实现一个系统的全部。(例如恶意软件什么的)

更加有趣的是打开其他文件。考虑到大部分会将TIM快捷方式放在桌面,可以用下面的代码,不断打开位于桌面的QQ.lnk。

import os
while True:#每个人的TIM放在不同位置,此代码可能未必成立os.system(r'C:UsersPublicDesktopTIM.lnk')

TIM的棺材板压不住了;这样甚至还可以用来检测电脑性能。

python是解释语言,每次运行Python文件,都可理解为是在CMD中执行如下过程:

python解释器位置 .py文件
C:Users11605AppDataLocalContinuumanaconda3python.exe C:sample.py

即这儿相当于是python.exe接受了一个运行参数"C:sample.py"。python中argv来表示这个参数列表。如此便可在程序运行时接收多个参数了。

import 

进一步地,因为所有语言都可以进行CMD调用,因而,其实可以通过文件层面进行数据交互。即先使用A语言制作界面,再用A语言调用CMD打开B语言制作好的exe文件,B语言运行产生一个结果文件Result,A语言读取那个文件,然后将结果显示到A语言上。

这都是后话了。

希望你看完之后有所收获。至少下次面对满是黑框的界面时,会觉得今日所看的这篇文章,所谈不虚。

cmd命令打开文本文档_震惊!我竟然通过控制台打开了QQ!相关推荐

  1. cmd命令打开文本文档_善用bat命令提高办公效率

    bat指的是批量处理文件命令,在 Windows 系统使用.而 bat 文件是可执行文件,由命令构成,其中可以包含对其它程序调用,文件后缀是 bat 或 cmd.在文件中,一行内容就是一条执行命令,可 ...

  2. python打开文本文档_带声明的Python –带打开的文件

    python打开文本文档 Python with statement allows us to write simpler code when working with context manager ...

  3. cmd命令打开文本文档_win10自带照片应用打开太慢,改用win7照片查看器

    win10照片这个应用的功能确实多了很多,但平时我们只是看个图片,它却打开太慢,不如win7照片查看器来的爽.但是win7照片查看器在win10里是隐藏的,需要给它在注册表里手动添加支持的格式,就是让 ...

  4. cmd命令打开文本文档_Windows10家庭版打开「本地组策略」

    在win10家庭版系统中默认是没有组策略的,组策略打不开无法进行相关所需要的一些设置,该如何解决呢?可以通过将[Windows10 家庭版]升级到[Windows10专业版]来解决,但这是不推荐的.那 ...

  5. 脚本文档_创建完美的架构文档脚本

    脚本文档 描述 (Description) System views allow us to gain access to information about any objects within S ...

  6. C语言文件操作-总是打不开文本文档

    如果你新建一个名为"dictionary"的文本文档,就按下面样子加.txt FILE *h;h=fopen("dictionary.txt","r& ...

  7. CMD命令行修改.ps1文件(powershell脚本)的默认打开方式

    只需要以管理员身份运行CMD命令行,执行一次以下代码,以后即可双击运行 .ps1 脚本: ftype Microsoft.PowerShellScript.1="%SystemRoot%\s ...

  8. springboot 历史版本文档_乘风破浪,SpringBoot入门

    SpringBoot入门篇 前言 在普通的java项目中,大量的xml文件配置起来相当繁琐,导致了开发效率非常低下,整合第三方框架的配置可能会存在冲突问题导致部署效率低,打包方式是将项目打成一个war ...

  9. python命令打印word文档_使用DOS命令如何打印Word文档

    打印Word文档,使用窗口菜单即可打印,为什么还来个多余的招数?首先澄清一下,这不是没事找事做,而是一招防患于未然的绝招! 什么情况下我们使用到这招呢? 当你倒霉到极点.走路都会被石头扳倒的时候就用得 ...

最新文章

  1. OpenVINO 2020版没有cpu_extension.dll问题解决
  2. ssh远程登录执行shell脚本,找不到jps
  3. linux虚拟机如何加网卡,linux虚拟机添加新的网卡
  4. 幽幽的灵光射不出你想要的疯狂
  5. docker mysql开机自启动_Docker 学会让容器开机自启服务
  6. Hadoop学习总结之五:Hadoop的运行痕迹
  7. mongodb修改数据语句_MongoDB 常用语句
  8. 【转】Pro Android学习笔记(二六):用户界面和控制(14):RelativeLayout
  9. Python实现样本类别的可视化(绘制饼图,展示各类别样本的比例)
  10. c语言万年历的原理,[原创] C语言实现:万年历(1)
  11. HTML超好看的个人主页源码+支持响应式
  12. 防火墙双机热备(应用场景分析及配置)
  13. Petalinux移除module或app的方法
  14. 美食杰(个人主页编辑资料)
  15. VUE+ ELEMENT 选人的弹窗组件
  16. 记录C语言学习【单个按键之长按+短按】
  17. 图中的搜索——dij
  18. 英文歌曲:What I Have Done(变形金刚第一部主题曲)
  19. 什么是Spring的依赖注入?
  20. android微信分享怎么自定义样式,自定义微信分享样式教程

热门文章

  1. r语言提取列名_R语言基础(2)向量|矩阵|数组|数据框|数据IO|实用函数
  2. java 序列化概念和作用_结合代码详细解读Java序列化与反序列化概念理解
  3. mysql使用释放资源_数据库--释放mysql数据库资源
  4. 【控制】《自动控制原理》胡寿松老师-第1章-自动控制的一般概念
  5. Ardino基础教程 15_火焰报警器
  6. 一起学nRF51xx 2 - clock
  7. mysql 安装手册(转)
  8. 【S操作】老铁留步,干货来了!小总结云存储云办公云笔记工具——我的云工具选择,供您参考...
  9. FreeRTOS 查询任务 剩余的栈空间的 方法
  10. 考前自学系列·计算机组成原理·计算机的硬件组成及其功能