Windows PowerShell漫谈-win7下没有超级终端
有一次一个硬件工程师同事让我帮忙联调串口,我才发现win7下没有超级终端,结果那个同事给了我一个串口助手。
本着对问题刨根问底的精神我上网搜了一下有关win7和超级终端的问题,才发现win7下真的没有超级终端,有些网友推荐说PowerShell具备超级终端的功能,可以调试串口,于是我就有了研究一下PowerShell的想法,因为我不太喜欢用串口助手之类的工具。
由于对PowerShell完全没有概念,索性直接看帮助文档,当然我看的是Windows PowerShell ISE的帮助文档。这里插一句,Windows PowerShell是专为系统管理员设计的新Windows命令行shell,而且PowerShell是支持脚本编写的,所以微软专门为PowerShell开发了一个集成脚本环境,也就是Windows PowerShell ISE。由于常年从事windows开发,使用windows产品,在windows的桌面环境下工作,所以我对命令行的环境没有什么亲切感。不过Windows PowerShell ISE给了我不一样的感受,他是一个对PowerShell命令行功能全部支持的可视化环境,而且提供比PowerShell更丰富的脚本开发功能,并且有良好的可扩展性。经过简单的试用,我就喜欢上了这种对于我来说全新的电脑管理方式,于是开始认真研读其帮助文档,希望有更大的收获。
从10年末开始断断续续读PowerShell的帮助文档并尝试使用PowerShell,一直到2011年的1月1日读完了帮助文档中所有的用户手册部分。我不知道是我愚笨还是有些网友开玩笑,我没有找到任何与串口调试有关的内容。不过如果说通过脚本开发可以为PowerShell扩展出类似超级终端的功能,我想是可以的,但我不想那样去做。如果有朋友知道怎样用PowerShell调试串口还请告诉我,我在这里谢过了。虽然初衷没有实现,但是通过对PowerShell的研究还是有不少收获的,这里简单总结一下,也和大家分享一下学习心得。
首先,通过对PowerShell的研究可以看出微软的一个明显的策略方向,也就是重拳出击服务器市场。众所周知,微软的windows在个人PC领域可谓一家独大,但是其在服务器应用上就业绩平平了。根据微软公司的计划,2009年将会实现所有微软公司的GUI管理工具通过PowerShell作为中间层对服务程序进行管理,现阶段例如Exchange 2007等已经支持PowerShell的管理。可以预期,使用PowerShell管理Windows服务器指日可待。届时,微软很有可能推出全新的命令行操作系统用于服务器管理,实现真正意义上的与UNIX之类的操作系统产品的竞争。当然,操作系统的竞争不在于其交互或表现形式,而在于系统内核及其对设备的管理。可如果微软真正实现了命令行式的服务器系统,谁又能担保他不会再在内核层上做以改进。呵呵,个人推测而已。
再说说PowerShell本身吧,与接受和返回文本的大多数shell不同,Windows PowerShell是在.NET Framework公共语言运行时(CLR)和.NET Framework的基础上构建的,它接受和返回.NET Framework对象。这一点是它最吸引我的地方,一个完全的面向对象的命令行工具。可能你不会理解,这种机制有什么好处?简单看一下PowerShell的帮助文档就可以发现,PowerShell的所有命令都是通过操作.NET Framework的对象完成的,还可以通过New-Object使用.NET Framework运行时可调用包装来创建COM对象。通过对帮助文档的研读和实际使用的感受我们可以更好的理解.NET Framework的对象的使用方法和windows的工作方式。如果你是一个C#的程序员工,这一点就更为明显。假如你想完成一些对于操作系统管理的需求和任务,完全可以先在PowerShell中查找相关命令并使用它们来获取对你有用的信息,甚至可以通过管道定向轻易获取到相关命令的结果,而且最令人兴奋的是你获取到的是一个.NET Framework的对象而不是简单的文本。
最后想说的一点是,PowerShell提供了丰富的远程管理功能。我们可以在一台主机上根据网络内的计算机名通过PowerShell的远程会话实现多机管理,我觉得这几乎就是云管理。另外,PowerShell可以实现根据不同使用者设置的不同配置文件来区分不同的会话环境。我们可以自行设置会话中的变量、函数、脚本以及各种丰富的配置信息。这一切最为直接的结果就是,我们可以很方便的通过PowerShell实现对一个网络内的所有主机的管理,加上为个人会话环境保存的配置文件可以方便的实现管理移植,使计算机管理更加得心应手。
我接触shell的东西不多,只是简单了解cmd.exe的一些相关命令。所以当我了解到PowerShell的上述功能时我觉得眼睛一亮,可能在有些朋友看来我有些井底之蛙了。不过有一点我觉得我的认识因该还是正确的,对于一个程序员掌握一款命令行工具应该还是必要的,尤其是他所从事开发的目标系统的相应命令行管理工具。从这个角度看,研究一下PowerShell应该是windows程序员的不错的选择。
一.Windows 7中不包括超级终端。您可以使用多个选项完成相同的任务:
如果只需要远程解释器访问,则可以使用 WinRS(Windows 远程解释器)。若要获得 WinRS 的帮助,请在命令提示符下键入 winrs /?,然后按 Enter。
尝试使用 Telnet。Telnet 是一个基于文本的简单程序,可以使用它通过 Internet 连接到其他计算机。
如果使用过超级终端解决调制解调器问题,现在请改用“电话和调制解调器”:
通过单击「开始」按钮 ,然后单击“控制面板”,打开“电话和调制解调器”。 在搜索框中,键入电话和调制解调器,然后单击“电话和调制解调器”。
-
适用于所有版本的WIN7系统。
二.VISTA中已经不将超级终端作为系统的一个应用程序了,以下是微软对其的解释:
"HyperTerminal is no longer part of Windows. There are several options you can use to replace its functionality. "
不过我们可以用以下的方法在VISTA的操作系统中使用超级终端:
1 从超级终端的原始提供者Hilgraeve那里下载一个Hilgraeve HyperTerminal For Oersonal Use。
2 或者从XP系统文件夹里,将hypertrm.dll和hypertrm.exe两个文件复制过来,将hypertrm.dll 放到c:\windows\system32下,就可以继续使用了。
3 或者你可以下载puTTY来用。三.附件里面专门有一个Windows PowerShell文件夹,里面2个都是超级终端,一个简化版,一个超强版
四.Telnet是系统管理员常用的远程登录和管理工具,在Windows 2000/XP/2003/Vista系统中它作为标准的系统组件集成到系统中供用户使用。不过默认情况下Telnet服务是被禁止,通常情况下我们只需运行services.msc打开服务管理,找到Telnet服务项设置其启动类型为“手动”或者“自动”,然后启动该服务即可使用了。不过在Windows 7中,你按照上述方法是不能找到并启用Telnet服务的。那如何找回Windows 7的Telnet功能呢?
1、隐藏原因
其实,在服务管理器中找不到Telnet并不是Windows 7抛弃了Telnet,而是默认状态下Windows 7并没有安装Telnet服务。这也是微软第一次从个人系统中将Telnet剔出了系统默认组件之外,这和Windows Server 2008类似。我想微软这么做,应该是出于安全性考虑,毕竟Telnet的数据是以明文传输的,攻击者和容易通过嗅探获取敏感信息。基于安全性考虑,建议大家还是使用安全性更高的、加密的SSH远程管理方式。
2、安装Telnet
不过,我们也没有必要因噎废食,作为个人用户Telnet还是非常方便的。在Windows 7下安装Telnet和Windows Server 2008略有不同,大家可以通过下面的操作方法实现。依次点击“开始”→“控制面板”→“程序”,“在程序和功能”找到并点击“打开或关闭Windows功能”进入Windows 功能设置对话框。找到并勾选“Telnet客户端”和“Telnet服务器”,最后“确定”稍等片刻即可完成安装。除此之外,我们也可通过该向导安装“TFTP客户端”、“Internet 信息服务”等。
安装完成后,Telnet服务默认情况下是禁用的。还需执行“开始”→“运行”,输入servcies.msc打开服务管理器。找到并双击Telnet服务项,设置其启动方式为“手动”(更安全,只在需要的时候才启用),最后“启动”该服务“确定”退出即可。
Windows PowerShell漫谈-win7下没有超级终端的更多相关文章
- [转]ubuntu 下minicom超级终端的使用方法
[转]ubuntu 下minicom超级终端的使用方法 http://blog.chinaunix.net/uid-25909619-id-3184639.html 系统环境: Ubuntu 11.0 ...
- win7下建立超级隐藏账户
win7下建立超级隐藏账户 实验目的: 隐藏用户,不让管理员简单的发现 隐藏方法: 1.命令提示符中创建隐藏账户这种方法只能将账户在"命令提示符"中进行隐藏,而对于"计算 ...
- ubuntu 下minicom超级终端的使用方法
http://blog.chinaunix.net/uid-25909619-id-3184639.html Ubuntu下使用sshfs挂载远程目录到本地 http://blog.csdn.net/ ...
- Win7下使用Putty代替超级终端通过COM串口连接开发板方法
1.如果电脑(笔记本)没有串口接口,则需要使用一个 USB-Serial 转换线,这里使用 prolific usb-serial USB--串口转换线,首先需要在win7上安装对应的 USB--串口 ...
- linux超级终端minicom的使用方法
===== 一.Minicom介绍 ===== Linux下的Minicom的功能与Windows下的超级终端功能相似,可以通过串口控制外部的硬件 设备.适于在linux通过超级终端对 ...
- Android系统在超级终端下必会的命令大全(adb shell命令大全)
. 显示系统中全部Android平台: android list targets . 显示系统中全部AVD(模拟器): android list avd . 创建AVD(模拟器): android c ...
- Win7下超级管理员创建普通权限任务
已转至新的博客 http://www.raysoftware点击打开链接.cn/?p=49 项目中用到一个功能,Win7下超级管理员创建普通权限任务. 试了几种办法,例如获取资源管理器的Token,然 ...
- Win7超级终端查看单片机printf输出
问题描述: 编写单片机C程序时,经常会用到printf输出信息进行查看,如何查看printf输出? 问题解决: (1)编写单片机C程序 ucos是一个实时多任务操作系统,以上是 ...
- Windows系统安装————windows7 企业版 无法安装 NET.framework4.52-4.6版本在WIN7下解决办法
官方安装包下载地址:https://www.microsoft.com/zh-cn/download/details.aspx?id=48137 我安装了NMM后提示NET.framework版本太低 ...
随机推荐
- chrome disable-web-security 关闭安全策略 解决跨域
Chrome 跨域访问线上接口 时间:2016-04-21 作者:zhongxia 前后端分离之后,联调的时候就会出现问题,那就是Ajax跨域问题. 跨域问题的解决方案有很多种比如常规的 后端使用CR ...
- MP4大文件虚拟HLS分片技术,避免服务器大量文件碎片
MP4大文件虚拟HLS分片技术,避免点播服务器的文件碎片 本文主要介绍了通过虚拟分片技术,把MP4文件,映射为HLS协议中的一个个小的TS分片文件,实现了在不实际切分MP4文件的情况下,通过HLS协议 ...
- (转)Unity控制反转和依赖注入
昨天,面试官说他们的项目使用的是Unity,我们的项目中使用的是autofac,看了一下,用法都差不多,就连方法的名字都是一样的哈,想了解的朋友可以看看这篇文章,作者讲解的挺详细的,关于autofac ...
- BZOJ 4568: [Scoi2016]幸运数字 [线性基 倍增]
4568: [Scoi2016]幸运数字 题意:一颗带点权的树,求树上两点间异或值最大子集的异或值 显然要用线性基 可以用倍增的思想,维护每个点向上\(2^j\)个祖先这些点的线性基,求lca的时候合 ...
- open-falcon-agent插件使用
说明 Plugin可以看做是对agent功能的扩充.使用插件可以对采集脚本进行统一管理,方便定制修改,也可以免去在crontab中添加计划任务. 开启plugin功能 # 修改agent配置文件 &q ...
- Vue的土著指令和自定义指令
1.土著指令 当我开始学习Vue的时候,看官网的时候看到了"指令"两个字.我愣住了,what?指令是啥啊?后来继续往下看,像这种什么"v-for""v ...
- 【Tools】ubuntu虚拟机Vmware Tools 安装记录
1.下载VmwareTools 链接: https://pan.baidu.com/s/1c4baji4 密码: h3si 2.终端打开下载文件位置 cd /home/ubuntu/Downloads ...
- 【转】Nginx配置详解
转自:http://www.cnblogs.com/knowledgesea/p/5175711.html Nginx常用功能 1. Http代理,反向代理:作为web服务器最常用的功能之一,尤其是反 ...
- Java堆栈内存总结
在Java中,主要存在四块内存空间,除了保存static类型属性的全局数据区,以及保存虽有方法定义的全局代码区之外,程序员更多的在乎内存中的另外两种区域--对象的生存空间堆(heap)和方法调用及变量 ...
- 如何知道你的linux是什么时候安装的
在安装系统时,每个分区下都会有一个 lost+found,而且这个目录的创建时间是和该分区创建的时间一样的.所以如果想知道你的系统是什么时候安装的,只需要看这个目录的创建时间即可. 通常情况下,我们分 ...