探索PowerShell (二) PowerShell的基本操作

PowerShell控制台

打开PowerShell,显示如下界面:

命令提示符前缀为:


PS C:\Users\MaRui>

PS的意思为正在运行PowerShell中,而C:则是我的主目录驱动器号,不同机器会有所不同。

最最最基本的操作与cmd、dos、sh等相同。

cmdlet命令

虽然有超过一百条新的PowerShell命令需要去学习,但是,与大多数命令行界面一样,PowerShell命令已经被标准化。它使用“动词-名词”的命名形式作为一个cmdlet命令。该标准大大降低了学习难度,并且对所有cmdlet命令提供了更好的描述性帮助。

要查看当前PowerShell中所有的cmdlet,使用如下命令:


get-command <enter>

接下来,让我们使用特定的动词列出所有的命令。下面是使用动词"Get“筛选后的cmdlet:


get-command -Verb Get <enter>

其他命令同样可以使用这种筛选方法。这样子组合之后,上百条命令就很好记忆了。

简单举例其他基本常用命令:


get-help <enter>


get-help * <enter>


get-service <enter>


get-help get-service <enter>

试试下列按键吧,看看会发生什么:


Page Up - 跳转到历史缓冲区中的第一个命令。

Page Down - 跳转到历史缓冲区中的最后一个命令。

UpArrow - 向后显示历史缓冲区命令。

DownArrow - 向进显示历史缓冲区命令。

Home - 跳跃到命令行的开头。

End - 跳跃到命令行的末尾。

Ctrl + LeftArrow - 到最左侧字符。

Ctrl + RightArrow - 到右侧单词结尾。

Tab - 完成输入(在控制台中键入GET - C和按TAB键,再按下Tab试试)。

F7键 - 显示历史缓冲区(使用向上和向下箭头键来浏览缓冲区)。

或者在别的窗口复制一段文字,在PowerShell上按鼠标右键试试,类似于sh下的鼠标中键的作用。


在PowerShell命令中,还有一类被称之为“原生窗口命令”。例如我们可以从PowerShell命令行启动services.msc的GUI窗口。


services.msc <enter>

既然我们使用PowerShell,那么就可以无视services.msc了。

下列是对服务进行操作的命令<以Brower服务为例>:


get-service -name Browser <enter>
stop-service -name Browser <enter>
get-service -name Browser <enter>

需要注意的是:在使用cmdlet停止服务时不会有任何迹象来向用户告知该服务已经成功停止的。

同样,启动服务命令:


start-service -name Browser <enter>

启动服务后也不会有任何反馈性迹象表明服务正常启动,除非服务启动失败。

这一段的命令就简单介绍到这里,是不是很简单?只需要记着“动词-名词”这一形式就可以了!

下面贴出PowerShell中的基本运算语法示例


PS C:\> 99 + 100
199

在PowerShell中,可以非常简单的进行数学运算,你所要做的仅仅是输入表达式这么简单,结果就会自动输出,在此过程中不需要使用其他shell中的打印语句等,运算结束后得到的执行结果也不会被随意丢弃掉,而是直接输出,往后我们会学习如何将结果进行丢弃。


PS C:\> "Hello World!"
Hello World!

"Hello World”,就像上面的数学计算,直接输入字符串即可。使用过Perl脚本的会觉得这里很熟悉,因为PowerShell很大程度上借鉴了Perl的优点。


PS C:\> (7 - 2 * 3) / 5
0.2

对于四则混合运算,PowerShell也能很好的支持。在表达式中可以使用( )来调整运算符的优先级和结合性。需要注意的是,PowerShell支持若干种不同的数据类型,例如:int、float、double等等。往后我们会接触到类型转换等内容。


PS C:\> (2+2)*3/7 > c:\fun.txt
PS C:\> type c:\fun.txt
1.71428571428571

同样,除了屏幕输出外,我们可以将结果存储到临时文件,然后使用type命令将文件的结果取回。

PS C:\> $n = (2+2)*3
PS C:\> $n
12
PS C:\> $n / 7
1.71428571428571

另外,我们还可以通过对变量赋值,将运算结果存储到变量中,并使用该变量进行后续的计算。

PS C:\> $files = dir
PS C:\> $files[3]
PS C:\> $files = dir
PS C:\> $files[3]
    Directory: Microsoft.PowerShell.Core\FileSystem::C:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
d-r-- 2010-3-26 21:25 Program Files

作为一个面向对象的语言,我们可以简单的将命令返回的结果赋值给变量。这里的$files中包含了目前所处目录下的目录项的对象集合,使用普通数组访问语法就可以获得该位置的对象。例子中显示了Program Files目录。注意:PowerShell中的数组下标是从0开始的,这点与.Net Common Language Runtime完全一致。

这一节就到这里。有兴趣的童鞋可以继续关注下一节内容。

(0)

相关推荐

  • 探索PowerShell (二) PowerShell的基本操作

    PowerShell控制台 打开PowerShell,显示如下界面: 命令提示符前缀为: PS C:\Users\MaRui> PS的意思为正在运行PowerShell中,而C:则是我的主目录驱动器号,不同机器会有所不同. 最最最基本的操作与cmd.dos.sh等相同. cmdlet命令 虽然有超过一百条新的PowerShell命令需要去学习,但是,与大多数命令行界面一样,PowerShell命令已经被标准化.它使用"动词-名词"的命名形式作为一个cmdlet命令.该标准大大降低

  • Java 在游戏中探索数组二维数组

    目录 什么是数组 举例(装备栏) 声明数组 int类型 String类型 数组操作 遍历数组 二维数组 声明二维数组 这里是JAVA成仙路,关注我学习JAVA不迷路 什么是数组 数组(Array)是有序的元素序列. 若将有限个类型相同的变量的集合命名,那么这个名称为数组名.组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量/12713827).用于区分数组的各个元素的数字编号称为下标.数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按有序的形式组织起来的一种形式.

  • Java 在游戏中探索数组二维数组

    目录 什么是数组 举例(装备栏) 声明数组 int类型 String类型 数组操作 遍历数组 二维数组 声明二维数组 什么是数组 数组(Array)是有序的元素序列. 若将有限个类型相同的变量的集合命名,那么这个名称为数组名.组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量/12713827).用于区分数组的各个元素的数字编号称为下标.数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按有序的形式组织起来的一种形式. 这些有序排列的同类数据元素的集合称为数组. 数

  • 探索PowerShell (四) PowerShell的对象、格式与参数

    今天贴博文晚了,感谢各位能继续关注! 本节将要给大家介绍一下PowerShell下的对象,基本格式以及参数.依然属于PowerShell的基础. PowerShell中的对象 在本教程开篇我们说过,PowerShell是基于面向对象化的,不像传统的shell那样基于文本.这其中最主要的原因就是因为Win平台在管理操作上主要以面向对象为主,因此为了符合系统特点和我们的操作习惯,PowerShell也继承了这一特色.因此,不像传统的shell,在PowerShell中,我们可以随意地与对象进行互动,

  • 探索PowerShell (三) PowerShell下使用Aliases

    不知道各位有没有接触过linux,我才疏学浅,对alias的认识是从linux上来的.Linux常用的Bash命令也是有上百个,虽然一般情况下命令都非常简短,不过很多时候需要大量的却是大量的参数,这样,对很多初学者来说,背命令变成为最头疼的事情,也使得很多Linux初学者望而生畏.因此,在linux下,很常用的就是alias,也就是别名.当然,PowerShell很好的借鉴了这一点. 这一节就来介绍PowerShell下的Aliases. 在PowerShell中,为了习惯于使用,可以使用别名代

  • 探索PowerShell(五) PowerShell基础知识

    在PowerShell中,我们可以轻松的与数据.对象进行交互,为了简化我们访问外部数据,PowerShell允许我们像操作驱动器.文件一样对数据.对象等进行操作. 使用这条命令,查看我们已有的Providers: get-psprovider 实际上,每一个Provider就是一个动态链接库(.dll),在PowerShell中也可以被称之为"管理单元",在管理单元中,有详细的代码实现我们的各种操作.PowerShell甚至允许我们自己编写Provider:http://msdn.mi

  • 探索PowerShell(七) PowerShell变量

    变量 在程序设计中,变量是最基本的概念,它是我们表示数据的在存储时的代号.在PowerShell中,变量通常供我们在脚本中使用,它可以是数字.字符.字符串,甚至是对象.当然,和任何shell一样,它也有自己的特定的变量,如:$_ .$Args.$Error.$Home.$PSHome等. 在PowerShell中,所有的变量以"$"开头,用"="来给变量赋值.例如: $StrUser = "MR″ <enter> 或者使用"set-v

  • 基于PowerShell在Ubuntu系统的使用详解

    本文主要介绍如何在Ubuntu 16.04 LTS上安装和使用PowerShell.要知道,PowerShell Core是微软公司推出的一个跨平台(Windows,Linux和macOS)自动化和配置工具/框架,可与现有工具很好地配合使用,并对结构化数据(如JSON, CSV,XML等),REST API和对象模型的处理做了优化.PowerShell包括一个命令行shell,一个相关的脚本语言和一个处理cmdlet的框架. 下面先介绍在Ubuntu 16.04(Xenial Xerus)服务器

  • PowerShell基本使用教程

    一.说明 1.1 背景说明 个人对PowerShell也不是很熟悉,开始的时候就突然看到开始菜单中多了个叫PowerShell的文件夹,后来一点就看到某个教程视频说PowerShell很厉害但也没怎么听,再后来就看到kali也有了一些PowerShell的脚本这才意识到PowerShell应该确实有独到之处而且正在逐渐受到认可,不过我使用PowerShell是不久前网上看到篇文章说PowerShell可以算数所以常当个计算器使用.直到昨天看了<Windows PowerShell实战指南>才算

  • Windows Powershell 介绍和安装

    Powershell 是运行在windows机器上实现系统和应用程序管理自动化的命令行脚本环境.你可以把它看成是命令行提示符cmd.exe的扩充,不对,应当是颠覆. powershell需要.NET环境的支持,同时支持.NET对象.微软之所以将Powershell 定位为Power,并不是夸大其词,因为它完全支持对象.其可读性,易用性,可以位居当前所有shell之首. 当前powershell有四版本,分别为1.0,2.0,3.0 ,4.0 如果您的系统是window7或者Windows Ser

随机推荐