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

ff20d86d7a3653653e090fd62b47ad34.png

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

如何实现

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

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

公共桌面: C:UsersPublicDesktop;

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

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

即可得到封面结果。

实现原理

兴致缺缺者请绕道。

5c96faf72f0702ca39e2405fd03e77e4.png

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

CMD

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

ae99d57f2c358dffd8d3beb1e05c2169.png

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中试试,你会获得它的绝对路径。

环境变量

fbd0eeebdd3340ee5f550421986a185f.png

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

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

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

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

cd %OneDrive%

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

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

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

设置完之后,查看一下:

c5b76387f724d9f1f8d5bd5ba733b85b.png

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

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

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

环境变量-path

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

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

TIM.lnk

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

416e672678f72bbc6bbf74c88a16dfbb.png
点击编辑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')

9b744e0bb67f7cc9512bb5c5e5e4c7ee.png
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语言上。

这都是后话了。

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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值