PowerShell_零基础自学课程_2_Powershell与Cmd以及Unix/Linux Shell

时间:2022-08-28 14:30:45

上篇文章我说道,windows为了改变用户对其console界面的诟病,于是就从windows   vista开始,计划要改变这种局面,于是就有

了Powershell的出现。

1、兼容shell命令

  为了兼容Unix/Linux Shell(主要是bash)的命令;Powershell中提供了一套机制来兼容cmd.exe和bash命令。这就是上篇文章中提到

的别名机制。下图是powershell中兼容的cmd命令和unix/linux shell的命令。

PowerShell_零基础自学课程_2_Powershell与Cmd以及Unix/Linux Shell

2、标准命令的别名

  同样,powershell还提供一套机制来支持内置cmdlet的命令别名。

我们知道cmdlets采用一致的用户接口模式: 动词-名词。 正如上面所说,上表例举的别名是为了和其他的console界面命令相兼容,而内置命令的

别名是为了简便而设置的。powershell提供一组基于常用命令的动词和名词的速记名称来为标准别名进行命名。

  例如:

动词        命令的缩写/别名

    get            g

set            s

    item          i

location         l

command                      cm

   这样:gi   则相当于   get-item

si   则相当于   set-item

      因为这些别名实在powershell启动期间自动加载的;所以如果在命令行中再次设置命令行别名,则会提示错误,如下图所示:

PowerShell_零基础自学课程_2_Powershell与Cmd以及Unix/Linux Shell

3、Tab自动补全功能

  powershell同时还继承了Tab键的自动补全功能;不过这个与cmd和bash的Tab功能不太一样,powershell中的tab扩展功能是通过函数来实现的。

其函数是: TabExpansion控制的,由于在powershell中可以修改内置的函数,因此需要注意。

  在键入命令时,如果要用Tab键来补充文件名或者路径;则在键入部分文件名或者路径后,按下Tab键,powershell中将自动将命令补充为第一个匹

配项,如果重复的按下Tab键,则将逐一显示所有可用的选项。

  如果键入的是cmdlet;则与补充文件名和路径不同;如果要对cmdlet名称使用tab扩展,需要完整键入名称的第一部分及后面的连字符。可以填充

名称的更多部分已进行匹配。例如: 键入  get-c  然后键入Tab键,则自动补充的为get-childitem命令,如果继续按下tab键则补充出的命令为get-com

mand命令。

  在使用命令行自动补齐的过程有一点需要注意: 即无论何时Tan键都被解释为自动补充命令功能,因此在将命令复制到shell中时需要注意,复制的内容

后面不能包含Tab键。

PowerShell_零基础自学课程_2_Powershell与Cmd以及Unix/Linux Shell的更多相关文章

  1. PowerShell_零基础自学课程_5_自定义PowerShell环境及Powershell中的基本概念

    PowerShell_零基础自学课程_5_自定义PowerShell环境及Powershell中的基本概念 据我个人所知,windows下的cmd shell除了能够通过修改系统参数来对其中的环境变量 ...

  2. PowerShell_零基础自学课程_6_PS中获取帮助信息详解、管道、格式化输

    前些文章陆续的说了一些关于这些主题,但是讨论的都不够深入,今天我们深入的了解一下获取帮助信息.管道以及格式化输出的内容. 一.获取帮助信息 在PS中获取帮助信息,最常用的有: -? .get-comm ...

  3. PowerShell_零基础自学课程_1_初识PowerShell

    欢迎转载本系列文章:转载请注明出处:www.cnblogs.com/volcanol 自从微软推出.Net以来,微软旗下的windows体系就发生了很大的变化,首先是操作系统的界面的变化,例如vist ...

  4. PowerShell_零基础自学课程_3_如何利用Powershell ISE调试PS脚本

    微软在推出PS的同时,没有忘记其一贯的作风,什么东东都弄一个IDE环境,这不微软没有忘记给PS也来一个IDE的环境, 通过这个IDE环境,可以建立psl文件,可以调试psl文件. 1.IDE界面 我们 ...

  5. PowerShell_零基础自学课程_9_高级主题:静态类和类的操作

    上次我们说到了,wmi对象和com组件,今天我们继续来看PS中对象的相关内容.主要说一下静态对象和对象的基本操作. 一.静态对象 在PS中有一类特殊的对象,我们不能同过这些类创建新的对象,这些类是不能 ...

  6. PowerShell_零基础自学课程_8_高级主题:WMI对象和COM组件

    本系列文章从最初的初识开始,基本上可以完成一些简单的系统管理了,为了更方便的管理系统,同时为了更好的发掘系统的性能,就需要用到系统提供 的一些高级特性,在Windows Server系列的OS中,如果 ...

  7. 2 Powershell与Cmd以及Unix/Linux Shell

    上篇文章我说道,windows为了改变用户对其console界面的诟病,于是就从windows   vista开始,计划要改变这种局面,于是就有 了Powershell的出现. 1.兼容shell命令 ...

  8. 月薪12k的零基础自学前端必备手册

    随着互联网的深入发展,前端开发工程师一跃成为市场上非常抢手的人才.很多同学,包括以前做UI的.Java的.或者对于IT完全零基础的同学都想学习前端.下图是网上流传甚广的一张前端学习思维导图,很多初学者 ...

  9. 2019年最新超级有趣好玩的html+css网页布局课程,前端入门基础,html5+css3零基础入门课程-黑马程序员pink老师精心录制

    大家好,我是黑马程序员pink老师!! 本次视频是前端零基础入门的课程,pink老师采取有趣好玩讲法,带你快乐的学习枯燥的html+css知识,学完之后让你能快速布局pc端页面.代码也可以讲的好玩有趣 ...

随机推荐

  1. 每个部门绩效成绩第二名 sql server 查询 ( 替代 not in )

    原题: 集团中有多个部门,部门底下有多个员工,求每个部门绩效分数排名第二的人员,数据表结构如下: DEPAR          NAME             SCORE A             ...

  2. 【原创】有关Silverlight控件DataGrid的绑定数据后单元格单独复制的功能实现分析

    前些日子,公司新需求需要对silverlight的datagrid进行局部任意单元格数据可复制,查阅了半天网络资料愣是没找到相关资料,开始还以为是silverlight的bug根部无法实现, 最后还是 ...

  3. PHPUnit在Windows下的配置及使用

    由于我们项目涉及到php,因此需要对php代码进行单元测试.经过一番了解,决定用PHPUnit来测试php.PHPUnit花了不少时间摸索如何配置PHPUnit,看官网的文档也是一把泪.但知道怎么配置 ...

  4. lintcode:Pow(x, n)

    Pow(x, n) Implement pow(x, n). 解题 直接顺序求解,时间复杂度O(N) public class Solution { /** * @param x the base n ...

  5. 给div命名,使逻辑更加清晰

    在上一小节中,我们把一些标签放进<div>里,划分出一个独立的逻辑部分.为了使逻辑更加清晰,我们可以为这一个独立的逻辑部分设置一个名称,用id属性来为<div>提供唯一的名称, ...

  6. hadoop源码eclipse环境搭建-源码获取阶段

    就目前了解,结合eclipse阅读和编译hadoop源码用两种方式:svn和git. 根据官方指南http://wiki.apache.org/hadoop/EclipseEnvironment 推荐 ...

  7. win10&plus; ubuntu12&period;04双系统安装教程与遇到的问题

    1. 准备ISO. 参考:网站http://mirrors.ustc.edu.cn/ubuntu-releases/precise/ 下载 ubuntu-12.04.5-desktop-amd64.i ...

  8. 你不知道的JavaScript--Item18 JScript的Bug与内存管理

    1.JScript的Bug IE的ECMAScript实现JScript严重混淆了命名函数表达式,搞得现很多人都出来反对命名函数表达式,而且即便是现在还一直在用的一版(IE8中使用的5.8版)仍然存在 ...

  9. 实现一个自定义的ArrayList类,实现将原List中的每个数据都乘以10

    1.首先自定义一个Operate接口,如下所示: public interface Operate { public Integer caozuo(Integer i); } 2.实现自定义的Arra ...

  10. Python比较(关系)运算符

    比较(关系)运算符 运 算 符 作 用   举 例  结 果  >  大于 'a'>'b'   False  <  小于  156<456  True  ==  等于  'c' ...