windows脚本文件漫谈

早期的DOS窗口和提示符

说起使用电脑,渔父是从DOS时代开始的,证据就是渔父拥有6位数的QQ号。但是用得早不等于用得精,有了windows的图形操作系统,谁还去用命令行敲命令呀。所以渔父如今只记得几个简单的DOS命令,比如dir,cd,type,ipconfig之类。

那时,执行程序是需要在提示符后面输入命令的。通过这些命令,可以完成一些文件查看,复制删除,甚至文件生成等功能。但一次输入一个命令实在是太麻烦了,如果想一次执行很多命令怎么办?windows帮我们想了一个办法,把这些命令写一个文件里面,然后执行这个文件。这样的文件叫做批处理文件,它的扩展名是.bat 。在命令提示符下,直接输入文件名就可以执行。或者直接双击扩展名是.bat的文件就可以执行。这个应该是最早的windows脚本文件。

现在我们仍然可以启动windows的【命令提示符】,在运行窗口输入 cmd 即可进入提示符状态。

win键 + r 可以启动运行窗口

单击确定,然后得到了这个黑窗口

win10的DOS界面

和上面那个DOS很像是吧,只不过现在是版本更高了。


纵观操作系统的发展,windows出来之后曾让大家眼前一亮,然后就横扫天下,以至于各种Linux都开始纷纷效仿,但效仿了那么多年始终是个四不像,一直也没有成熟的应用。直到那个被上帝啃了一口的苹果推出了X OS操作系统,又让大家眼前一亮,原来还可以这么玩。

MS VS APPLE

但是在我们的心中,在我们的电影中,真正的电脑高手、黑客精英,没有一个是拿着鼠标在那里点来点去的,都是双手放在键盘上,帕金森晚期那样地抖着,屏幕上一行行不知道是代码还是乱码(滚动速度太快实在看不清)向流水一样的滚动……

话说天下大事,分久必合,合久必分。我们中国古代讲究天理循环,开始注定要结束,而结束又是一个开始。现在人的流行时尚也一样,今天半永久,明天烟熏妆。windows出来以后人们对命令符操作日益的不待见,以至于很多计算机专业的人根本不知道DOS为何物(也可能是听过过没见过),但是会不会再捡起它?

PowerShell的界面

从win7开始突然出来一个叫PowerShell的东西。我有一天好奇的点了一下,出来一个蓝色背景窗口?  难道是cmd修改了自己的配色方案,真相到底是什么?如果说小娜是为了蹭人工智能的热点和满足编程大叔们的萝莉控。那么这个和cmd长得差不多的东西又玩的是什么套路?渔父经过3秒的分析后,认为自从windows操作系统的口碑被Mac系统超越后,微软也在反思,赶上Mac的最快的方法是什么?那就是学Mac呀。因此从使用的角度渔父觉得win10很像Mac的X OS操作系统。小娜、微软商店、包括PowerShell,都是X OS有的东西。其中微软商店的使用,让我这个多年的windows老用户,完全摸不着头脑。安装好的程序到哪里去了?C:\Program Files下面竟然没有?!只见硬盘空间少,不知程序为何多?后来网上必应一下才知道,windows专门把它们放到了一个非常隐秘的地方,至于什么地方,请大家自行搜索。

兜了半天圈子,PowerShell到底是干什么用的?不急,让我先来插播一下VB Script(啥叫VB Script不想深入说明,简单说script中文叫做脚本语言,特点是一行一行的按顺序执行)。

话说因为盖兹对VB异乎寻常的热爱(据说这是他学会的第一门语言),他处处想把VB发扬光大,不仅搞了一个VB Script,还把它加入到自家的操作系统里面去。所以windows可以执行一些扩展名为 .vbs 的脚本语言,这个脚本语言应该就是的VB Script,所以早期的杀毒软件查杀病毒的时候也把.vbs文件当成可执行文件。

让我们来体验一下这种脚本语言,首先打开记事本,在里面输入:

MsgBox "Hello, world"

1.vbs文件的内容

然后选择文件另存为,此时要把【保存类型】修改为 “所有文件 (*.*)”,文件名输入1.vbs,再保存

注意保存类型选择所有文件

这时候你得到了这样一个文件

1.vbs

现在双击它


可以单击确定关闭

弹出了一个对话框,上面写着:Hello, world。

感觉10秒钟学会了编程有木有!有木有!

想来点高级的可以在文件里加入下面代码。

set fs = CreateObject("Scripting.FileSystemObject")
set drivec = fs.GetDrive("C:\")
MsgBox TypeName(drivec)
emptyspace = drivec.AvailableSpace
MsgBox "Avaialable on C:\: " & _
FormatNumber(emptyspace/1024^2,1) & " MB"

这几行命令的结果是在对话框中显示你的c盘还有多少可用空间。

感觉瞬间高大上了有木有?有木有?

虽然我们只教了一句 MsgBox 的命令,但聪明的人其实已经学会了编程,并可以用于实践了。

方法一:在桌面创建一个.vbs文件,文件名起一个吸引眼球的题目,然后用 MsgBox 显示想说的话,用半角引号" "扩起来,一句话一个 MsgBox……

biu~~,一个表白神器诞生了!


了解Linux的都是知道,Linux的控制台太强大了,怎么个强大法一般windows用户是理解不了的,一句话两句话也说不清楚(真相其实是作者不懂Linux)。Mac电脑的X OS因为脱胎于Linux,所以控制台也非常强大呀!那咱们windows是不是也得学呀。所以就搞了个PowerShell吧,当然这原因是渔父自己瞎猜的。

PowerShell看起来和cmd差不多,但是本质是不一样的,PowerShell能执行的命令更丰富,支持.Net,面向对象,以后可能成为平台,成为标准……(以上都是我网上找的,具体意思我也不懂)

那么既然那么厉害,让我们通过一个例子见识一下。首先还是用记事本创建一个文件,然后把下面代码copy进去,保存为2.ps1,方法跟之前一样,保存的时候选择全部文件而不是文本文件。

# create new excel instance
$objExcel = New-Object -comobject Excel.Application
$objExcel.Visible = $True
$objWorkbook = $objExcel.Workbooks.Add()
$objWorksheet = $objWorkbook.Worksheets.Item(1)

# write information to the excel file
$i = 0
$first10 = (ps | sort ws -Descending | select -first 10)
$first10 | foreach -Process {$i++; $objWorksheet.Cells.Item($i,1) = $_.name; $objWorksheet.Cells.Item($i,2) = $_.ws}
$otherMem = (ps | measure ws -s).Sum - ($first10 | measure ws -s).Sum
$objWorksheet.Cells.Item(11,1) = "Others"; $objWorksheet.Cells.Item(11,2) = $otherMem

# draw the pie chart
$objCharts = $objWorksheet.ChartObjects()
$objChart = $objCharts.Add(0, 0, 500, 300)
$objChart.Chart.SetSourceData($objWorksheet.range("A1:B11"), 2)
$objChart.Chart.ChartType = 70
$objChart.Chart.ApplyDataLabels(5)

这是你刚刚保存的文件,如果看不到扩展名,请自行网上搜索。

2.ps1

然后在文件上单击右键,选择【使用 PowerShell 运行】

2.ps1的运行方法

此时,如果你的电脑安装了EXCEL,你就会发现竟然打开了一个EXCEL,而且上面出现了一个饼形图!有木有,有木有!

2.ps1的运行结果

这个脚本的作用就是自动找到最占内存的10个进程,然后将它们占用的内存画成一个三维饼图,更加高大上了有木有?有木有?

好了,现在你应该大致知道windows脚本是什么东西了,大致知道PowerShell是个什么东西了,可以这些对你都没有用,你只是普通用户呀。哈哈哈哈!!!

但是也不要太失望,后来我想了想,其实还是有用的,不知道大家注意过没有,windows自带的计算器是不能直接进行四则运算的,那么怎么办呢?用PowerShell呀!

完美演绎四则运算

这就是一个检查作业的神器呀!

注1:未满18岁者请勿随便尝试上述文中脚本,否则因此导致系统死机、不能上网、电脑中毒、被黑客攻击、喊麦失败、主机爆炸等等后果均与作者无关!

注2:本文内容只是作者的感觉和印象,不具备任何专业性,请读者自辨。

注3:本文脚本内容来自于网络,感谢原作者的付出
http://www.cnblogs.com/yubo_ccu/archive/2009/02/04/1383752.html
http://www.cnblogs.com/grapeot/archive/2010/02/22/1670822.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,752评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,100评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,244评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,099评论 1 286
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,210评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,307评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,346评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,133评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,546评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,849评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,019评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,702评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,331评论 3 319
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,030评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,260评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,871评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,898评论 2 351

推荐阅读更多精彩内容

  • .bat脚本基本命令语法 目录 批处理的常见命令(未列举的命令还比较多,请查阅帮助信息) 1、REM 和 :: 2...
    庆庆庆庆庆阅读 8,077评论 1 19
  • 一、前言 如《第1章Ansible发展史》介绍,作为关注度最高的集中化管理工具,Ansible同样支持Window...
    木纳哥阅读 3,673评论 0 3
  • CMD命令:开始->运行->键入cmd或command(在命令行里可以看到系统版本、文件系统版本) 下载链接:pa...
    wh_阅读 52,838评论 0 25
  • 一:LoadRunner常见问题整理1.LR 脚本为空的解决方法:1.去掉ie设置中的第三方支持取消掉2.在系统属...
    0100阅读 4,105评论 0 11
  • 本人是一个初四的即将面临中考的学生,每天都累的要死,但有梦想,一直在努力,不是很聪明,以前最好的时候考年级第二,现...
    林九九啦啦啦阅读 329评论 5 1