PowerShell脚本语言初探

合集下载

powershell教程

powershell教程

powershell教程

PowerShell是一种用于自动化任务和管理计算机系统的命令行工具和脚本语言。它是Windows操作系统中的默认命令行选项,提供了许多功能强大的命令和脚本来协助系统管理员进行日常任务。

PowerShell可以运行各种命令,包括系统管理命令、文件处理命令、网络命令、注册表命令等。同时,它还支持脚本编写,可以编写包含复杂逻辑和任务序列的脚本来实现自动化操作。

以下是一些常用的PowerShell命令和用法:

1. 获取文件夹中的文件列表:

```

Get-ChildItem -Path C:\Folder

```

这个命令会列出指定路径下的所有文件和文件夹。

2. 复制文件或文件夹:

```

Copy-Item -Path C:\File.txt -Destination D:\Folder

```

这个命令会将指定路径下的文件复制到目标路径。

3. 删除文件或文件夹:

```

Remove-Item -Path C:\File.txt

```

这个命令会删除指定路径下的文件或文件夹。

4. 运行程序:

```

Start-Process -FilePath "C:\Program Files\Example\example.exe" ```

这个命令会运行指定路径下的程序。

5. 查找特定文件:

```

Get-ChildItem -Path C:\Folder -Filter *.txt -Recurse

```

这个命令会在指定路径下以及其子文件夹中查找扩展名为.txt 的文件。

6. 获取进程列表:

```

powershell_函数嵌套调用_示例及概述说明

powershell_函数嵌套调用_示例及概述说明

powershell 函数嵌套调用示例及概述说明

1. 引言

1.1 概述

Powershell是一种功能强大的脚本语言和管理框架,它在Windows环境中广泛应用于自动化任务和系统管理。函数作为Powershell中的重要概念,可以将一系列相关的操作封装为可重复使用的代码块,并且可以通过参数和返回值进行数据交互。

在某些情况下,我们可能需要在函数内部调用其他函数来实现更复杂的逻辑或功能。这就引入了函数嵌套调用的概念。通过函数嵌套调用,我们可以将程序分解为更小、更易于理解和维护的模块化部分。本文将介绍Powershell函数嵌套调用的示例及概述说明,帮助读者更好地理解和应用该特性。

1.2 文章结构

本文分为五个部分,具体内容如下:

- 引言:提供对Powershell函数嵌套调用的背景和概述。

- 正文:介绍Powershell函数嵌套调用的基础知识,并给出两个示例来展示其使用方法。

- 深入理解函数嵌套调用的实现方式:探讨函数嵌套调用背后的技术原理,包括Stack堆栈原理解析、上下文环境的传递与保存机制,以及递归调用和迭代调用的比较分析。

- 嵌套调用带来的优缺点分析及应用场景介绍:分析函数嵌套调用所带来的优点,并给出示例应用场景。同时,也探讨了嵌套调用可能存在的缺点,并提供相应解决方案。

- 结论:总结本文所述内容和重要观点阐述,并展望Powershell函数嵌套调用的发展前景和研究方向。

1.3 目的

本文旨在通过详细说明Powershell函数嵌套调用示例及概述,帮助读者全面了解该特性。通过学习和理解Powershell函数嵌套调用的基础知识、实现方式以及优缺点分析,读者将能够更加灵活地利用这一特性进行代码开发和系统管理。此外,文章还将提供一些示例应用场景,以启发读者对于Powershell函数嵌套调用更广阔的思考,并对其未来发展进行展望。

Linux下标准Shell与PowerShell的比较研究

Linux下标准Shell与PowerShell的比较研究

Linux下标准Shell与PowerShell的比较研

在操作系统中,Shell是许多用户与系统交互的主要方式。Linux 下的标准Shell和PowerShell是两种常见的Shell,它们在功能和特点上有着明显的不同。本篇文章将针对它们进行对比研究。

一、概述

Linux下的标准Shell是Bash(Bourne-Again SHell),它是由Brian Fox创建的自由软件,发行于1989年。Bash在Linux系统中被广泛使用,其语法和执行方式都与Bourne shell(sh)兼容。而PowerShell是微软公司的Shell,它是一种基于.NET框架的Shell,并且在Windows系统上运行得更好。PowerShell在2006年首次发布,主要用于Windows管理和自动化。

二、特点

1.脚本语言

Bash使用的是脚本语言,它使用一个称为“命令解释器”的程序

来执行命令和脚本。Bash的语法类似于其他Unix Shell,其中包括sh、ksh、csh等。Bash是跨平台的,可以在Mac OS、Linux和Windows等

系统上运行。

PowerShell也是一种脚本语言,但与Bash有所不同。它使用.NET 框架作为其底层运行时环境,并支持使用命令来进行任务处理。PowerShell的语法非常严谨,可以理解为一种“伪代码”语言。

2.对象

Bash中没有对象的概念。Bash处理的是字符串和文本流,并且使

用显示符合应用类型的命令来完成任务。

PowerShell支持对象,它可以控制和管理.NET对象。在PowerShell中,命令返回的所有对象都可以访问和操作其属性和方法。

PowerShell入门教程之Cmd命令与PowerShell命令相互调用的方法

PowerShell入门教程之Cmd命令与PowerShell命令相互调用的方法

PowerShell⼊门教程之Cmd命令与PowerShell命令相互调

⽤的⽅法

单独使⽤⼀种脚本来完成⼀项任务是理想的状态,⽽现实的情况往往是,因为历史原因、或者团队组成,你不得不将多种脚本或者程序组合在⼀起,来完成某项任务。本⽂的讨论范围是Cmd命令与PowerShell命令之间的组合与调⽤。

⽏庸置疑,Cmd命令与PowerShell命令之间的调⽤有两个⽅向。即在Cmd命令中调⽤PowerShell的命令,以及在PowerShell脚本中调⽤Cmd命令。需要说明的是,这⾥的调⽤分两个层次:⼀、简单的在其中⼀个的环境中执⾏另外⼀个命令,完成部分⼯作;⼆、在其中⼀个的执⾏上下⽂中调⽤另⼀个的命令,并根据返回结果来选择后⾯的逻辑。

在Cmd命令中调⽤PowerShell命令

如果只是在Cmd命令中调⽤PowerShell的命令,⽽不需要记录PowerShell的返回结果,是⾮常简单的。可以直接在Cmd命令或者脚本中执⾏类似⼀下命令:

复制代码代码如下:

powershell echo "Hello"

执⾏上述命令的时候,Cmd是把PowerShell当成⼀个应⽤程序来执⾏的。

在Cmd命令中调⽤PowerShell的命令并获得返回值的可⾏⽅法并不多。这是因为,Cmd命令对于结果的处理往往需要借助于⽂件读写,很少有机会在各个命令之间传递数据,并保存中间结果的。For命令是其中最好的⼀个⽅法,它的指向⽅法如下:

复制代码代码如下:

for /f %i in ('powershell echo "Hello"') do (set a=%i)

powershell编程实例

powershell编程实例

powershell编程实例

PowerShell 编程示例

简介

PowerShell 是一种基于对象和命令的脚本语言,用于在Windows 和其他平台上自动化任务和管理系统。它提供了一个交互式命令行环境,以及用于编写脚本和函数的丰富工具集。

创建 PowerShell 脚本

以下步骤说明了如何创建基本 PowerShell 脚本:

1. 打开 PowerShell Integrated Scripting Environment (ISE)。

2. 在编辑器窗口中输入以下代码:

```powershell

Write-Host "Hello, World!"

```

3. 单击 "文件" > "保存",将脚本另存为 ".ps1" 文件。

运行 PowerShell 脚本

要运行 PowerShell 脚本,请执行以下步骤:

1. 打开 PowerShell 控制台。

2. 导航到脚本所在的文件夹。

3. 键入以下命令,其中 "script.ps1" 是脚本的文件名: ```

.\script.ps1

```

使用 PowerShell 命令

PowerShell 提供了众多内置命令,用于执行各种任务。以下是一些常用的命令:

Get-Command - 获取可用命令列表

Get-Service - 获取系统服务列表

New-Item - 创建新项目(文件、文件夹等)

Set-Location - 更改当前工作目录

Write-Host - 在控制台中显示信息

使用 PowerShell 脚本编写函数

函数是可重用的代码块,可用于封装常见任务。以下步骤说明了如何编写 PowerShell 函数:

Windows+Powershell入门指南(中文)-微软资料

Windows+Powershell入门指南(中文)-微软资料
Windows PowerShell™ 入门指南
Microsoft Corporation 发布日期:2006 年 9 月
摘要
Windows PowerShell™ 是专为系统管理员设计的新 Windows 命令行外壳程序。该外壳程 序包括交互式提示和脚本环境,两者既可以独立使用也可以组合使用。 本文档旨在为新用户介绍 Windows PowerShell,以及使他们了解其基本功能。有关更详 细的信息,请参阅“Windows PowerShell 入门”。
驱动器和提供程序............................................................................................................ .................
自定义 Windows PowerShell................................................................................................................ 检查执行策略.............................................................................................................. ...................... Windows Powershell 配置文件......................................................................................................... 了解配置文件.............................................................................................................................. ... 创建配置文件.............................................................................................................................. ...

PowerShell入门

PowerShell入门

PoserShell中文站: PowerShell中文技术交流社区

PowerShell中文站:

Windows PowerShell 是微软公司为 Windows 环境所开发的壳程式(shell)及脚本语言技术,采用的是命令行界面。这项全新的技术提供了丰富的控制与自动化的系统管理能力。

PowerShell是一款基于对象的shell, 建立在.Net框架之上, 目前支持.Net Framework 2.0. 能够运行在Windows XP SP2, Windows Vista, Windows 2003操作系统上. 能够同时支持WMI, COM, , ADSI等已有的Windows管理模型。

这项全新的技术提供了丰富的控制与自动化的系统管理能力;而“脚本语言”(scripting languages)则是用来编写程序的计算机语言。脚本语言通常都有简单、易学、易用的特性,目的就是希望能让写程序的人(开发者)快速完成程序的编写工作。

PowerShell可以方便地查看和结束系统内的进程,PowerShell还支持将其设置为别名使用,PowerShell还有着管理系统服务、操作注册表和众多的网络相关操作。

Windows PowerShell™ 入门

Microsoft Corporation

发布日期:2006 年 9 月

摘要

Windows PowerShell™ 是专为系统管理员设计的新 Windows 命令行外壳程序。该外壳程序包括交互式提示和脚本环境,两者既可以独立使用也可以组合使用。

本文档介绍了 Windows PowerShell 的基本概念和功能,并提供了一些使用 Windows PowerShell 进行系统管理的建议方法。

PowerShell脚本编程实用指南

PowerShell脚本编程实用指南

PowerShell脚本编程实用指南PowerShell是由Microsoft开发的一种跨平台的任务自动化和配置管理框架。通过使用PowerShell脚本编程,可以简化和自动化各种常见任务,提高工作效率。本指南将介绍PowerShell脚本编程的基础知识和实用技巧,帮助读者快速入门和运用PowerShell脚本编写出高效可靠的代码。

一、PowerShell简介及环境搭建

1.1 PowerShell的定义和特点

PowerShell是一种任务自动化和配置管理框架,具有强大的命令行环境和脚本编程能力。它采用了对象导向的编程范式,使得脚本编写更加简洁高效。

1.2 PowerShell的安装和配置

在本节中,将详细介绍如何下载、安装和配置PowerShell的开发环境。通过按照指导进行环境搭建,读者可以轻松开始PowerShell脚本编程之旅。

二、PowerShell脚本语言基础

2.1 PowerShell基本语法

PowerShell脚本使用类似于C#和的语法,具有丰富的控制结构和数据类型。本节将介绍PowerShell脚本的语法规则和基本操作符。

2.2 变量和数据类型

了解如何声明和使用变量以及PowerShell支持的各种数据类型,对于编写灵活和可靠的脚本至关重要。本节将探讨PowerShell中常用的数据类型和变量操作。

2.3 流程控制

PowerShell脚本通过条件判断、循环和跳转语句来实现流程控制。在本节中,将介绍各种流程控制结构的语法和用法,并提供一些实例演示。

三、PowerShell脚本编程实践

在Windows操作系统下使用PowerShell

在Windows操作系统下使用PowerShell

在Windows操作系统下使用PowerShell PowerShell是一个强大的脚本语言和交互式命令行工具,可以在Windows操作系统下进行管理和自动化任务。它是一种命令行界面,可以方便快捷地管理和配置系统,也可以使用脚本编写任务来提高工作效率。

安装和启动PowerShell

安装PowerShell和启动它很容易。在Windows操作系统下,PowerShell已经默认安装,只需要打开搜索框,输入PowerShell,就可以找到它。点击打开即可,也可以按下Win+X组合键选择PowerShell来启动。

PowerShell的基本命令和语法

PowerShell有很多命令和语法,这里讨论几个最基本的命令和语法,帮助初学者了解PowerShell的基础知识。

1. Get-Command

这个命令可以用来获得所有命令的列表,语法为Get-Command。例如:

Get-Command

这将返回所有命令的列表,这些命令在当前计算机上可用。

2. Get-Help

这个命令可以用来获得关于其他命令的帮助文档,语法为Get-Help。例如:

Get-Help Get-Command

这将返回有关Get-Command命令的帮助文档。

3. Get-Process

这个命令可以用来获得正在运行的进程的列表,语法为Get-Process。例如:

Get-Process

这将返回当前计算机上正在运行的所有进程的列表,包括它们的进程ID和内存使用情况。

4. Set-ExecutionPolicy

这个命令可用于设置PowerShell的执行策略,以获得更好的安全性。执行策略指定可以在计算机上运行哪些脚本。例如:

学习使用PowerShell进行自动化脚本编写

学习使用PowerShell进行自动化脚本编写

学习使用PowerShell进行自动化脚本编写

PowerShell作为一种强大的自动化脚本编写工具,越来越受到开发者和系统管

理员的关注和喜爱。它具有丰富的功能和灵活的语法,方便使用者自定义编写脚本,提高工作效率。本文将介绍学习使用PowerShell进行自动化脚本编写的一些基本

知识和技巧,帮助读者快速上手。

首先,学习PowerShell的基础知识是必不可少的。PowerShell是一种基于命令

行的脚本语言,它运行在Windows操作系统环境下。想要熟练运用PowerShell,

我们首先需要了解PowerShell的语法和基本命令。比如,如何声明和使用变量、

如何编写条件语句和循环语句等等。在掌握这些基础知识的基础上,我们才能更好地理解和编写PowerShell脚本。

其次,掌握PowerShell的管道操作是非常重要的。管道操作是PowerShell的一项核心功能,它允许我们将一个命令的输出作为另一个命令的输入,从而实现多个命令的组合。例如,我们可以使用Get-Process命令获取正在运行的进程列表,并

将其输出通过管道传递给Sort-Object命令进行排序。掌握了管道操作,我们可以

更加灵活地处理和处理数据,提高编写脚本的效率。

另外,PowerShell还提供了丰富的模块和函数库,可以帮助我们更好地完成一

些常见的任务。比如,我们可以使用ActiveDirectory模块处理/管理Active Directory对象,使用Exchange模块处理/管理Exchange服务器,使用SQL Server

power shell用法

power shell用法

power shell用法

PowerShell 是一种命令行 Shell 和脚本语言,首次发布于 2006 年,面向管理员和DevOps (开发运维) 开发。PowerShell 可用于管理操作系统(如 Windows),也可用于管理许多其他 Microsoft 技术,如 SQL Server、Exchange 和 SharePoint。

1. 获取帮助

2. 测试命令执行的前结果

- Get-Process:获取正在运行的进程的列表。

- Get-ChildItem:列出文件系统中的文件和文件夹。

- Get-EventLog:获取事件日志中的所有条目。

3. 管道操作

Get-Process | Sort-Object -Property CPU -Descending

4. 格式命令

在上面的示例中,'Name' 和 'CPU' 列将以表格形式显示。

5. 运行程序

Start-Process calc.exe

6. 遍历文件夹

$files = Get-ChildItem "C:\Users\Username\Documents\" -Recurse -Include *.txt

foreach ($file in $files) {

# 执行跨每个 txt 文件的操作

}

在上面的示例中,我们使用 Get-ChildItem cmdlet 查找指定文件夹(如文档文件夹)中的所有 txt 文件。然后使用 foreach 循环遍历每个 txt 文件,并执行操作。

7. 远程管理

Enter-PSSession -ComputerName RemoteComputerName

PowerShell入门基础教程

PowerShell入门基础教程

PowerShell⼊门基础教程

Windows PowerShell 是专为系统管理员设计的新 Windows 命令⾏外壳程序。该外壳程序包括交互式提⽰和脚本环境,两者既可以独⽴使⽤也可以组合使⽤。

1、什么是交互式提⽰?

答:交互式提⽰就像打开⼀个cmd窗⼝,在⾥⾯执⾏⼀个ping命令⼀样,它会动态的输⼊结果。也可以像执⾏ftp命令⼀样,有⼀个上下⽂环境(Context),可以交互。

2、什么是脚本环境?

答:就像写VBScript脚本⼀样,以⽂件形式把PowerShell的程序语句写下来,然后利⽤PowerShell的脚本环境来执⾏整个脚本⽂件。顺便说⼀句,批处理也可以理解为⼀个脚本环境。PowerShell脚本⽂件的扩展名为.ps1,语⾔⽀持⽤于循环、条件、流控制和变量赋值的语⾔结构。

Windows PowerShell 是专为系统管理员设计的新 Windows 命令⾏外壳程序。该外壳程序包括交互式提⽰和脚本环境,两者既可以独⽴使⽤也可以组合使⽤。

解读:

1、什么是交互式提⽰?

答:交互式提⽰就像打开⼀个cmd窗⼝,在⾥⾯执⾏⼀个ping命令⼀样,它会动态的输⼊结果。也可以像执⾏ftp命令⼀样,有⼀个上下⽂环境(Context),可以交互。

2、什么是脚本环境?

答:就像写VBScript脚本⼀样,以⽂件形式把PowerShell的程序语句写下来,然后利⽤PowerShell的脚本环境来执⾏整个脚本⽂件。顺便说⼀句,批处理也可以理解为⼀个脚本环境。PowerShell脚本⽂件的扩展名为.ps1,语⾔⽀持⽤于循环、条件、流控制和变量赋值的语⾔结构。

psl白话解释

psl白话解释

psl白话解释

PSL(PowerShell脚本语言)是一种基于Windows PowerShell的脚本语言,可用于自动化和管理Windows操作系统。PSL具有简洁、易读、可维护的语法,使得它成为许多开发者和管理员的首选工具。

一、PSL概述

PSL是PowerShell Scripting Language的缩写,它是PowerShell的核心组件之一。PSL是一种基于脚本的编程语言,可以执行PowerShell命令和函数,从而实现对Windows操作系统的自动化管理。PSL的语法与Windows 批处理脚本相似,但功能更强大,可读性更高。

二、PSL的基本语法

1.变量声明:在PSL中,可以使用$符号声明变量,如:$var = "Hello, World!"。

2.注释:PSL支持单行注释,使用#符号,如:# 这是一个单行注释。

3.运算符:PSL支持常见的算术、比较和逻辑运算符,如:+、-、*、/、%等。

4.控制结构:PSL支持条件语句(if、else)、循环语句(for、do、while)等。

5.函数:PSL可以自定义函数,函数定义格式为:

FunctionName([Parameter1], [Parameter2]) {

...

}

三、PSL的应用场景

1.自动化任务:PSL可以用于自动化日常重复任务,如文件夹备份、文件复制等。

2.系统管理:PSL可以用于管理系统,如用户账户管理、磁盘分区管理等。

3.编程实践:PSL可以作为一门编程语言,用于开发小型应用程序或脚本。

4.脚本编写:PSL是编写PowerShell脚本的理想选择,易于维护和阅读。

学习使用PowerShell进行Windows系统管理

学习使用PowerShell进行Windows系统管理

学习使用PowerShell进行Windows系统管

第一章:PowerShell介绍

PowerShell是一种任务自动化和配置管理框架,它为IT Professionals提供了强大的管理工具和编程语言。PowerShell使用

简洁直观的语法,可以轻松地管理和控制Windows系统。

第二章:PowerShell基础知识

1. 安装PowerShell:首先,我们需要在Windows系统上安装PowerShell。这可以通过Microsoft官方网站下载并安装PowerShell软件包来完成。

2. PowerShell命令行界面:PowerShell提供了一个命令行界面,用户可以在此处输入命令进行操作。PowerShell还提供了多种插

件和扩展,以增强其功能。

3. PowerShell脚本:PowerShell脚本是一系列PowerShell命令

的集合,可以用于自动化系统管理任务。通过编写脚本,我们可

以提高工作效率,减少重复性的操作。

第三章:PowerShell基本命令

1. 获取系统信息:通过使用PowerShell的Get-ComputerInfo命令,我们可以获取关于计算机硬件、操作系统和网络的详细信息。

2. 管理文件和文件夹:PowerShell提供了一系列命令,可以创建、删除、复制和移动文件和文件夹等操作。

3. 管理进程和服务:使用PowerShell的Get-Process命令可以查看正在运行的进程列表,使用Stop-Process命令可以终止指定的进程。同样,我们可以使用Get-Service命令来查看正在运行的服务,使用Stop-Service命令来停止服务。

PowerShell入门(一):PowerShell能干什么?

PowerShell入门(一):PowerShell能干什么?

PowerShell⼊门(⼀):PowerShell能⼲什么?

PowerShell能⼲什么呢?就像序⾔中提到的那样,PowerShell⾸先是个Shell,定义好了⼀堆命令与操作系统,特别是与⽂件系统交互,能够启动应⽤程序,甚⾄操纵应⽤程序;第⼆,PowerShell允许将⼏个命令组合起来放到⽂件⾥执⾏,实现⽂件级的重⽤,也就是说有脚本的性质;第三,PowerShell能够能够充分利⽤.Net类型和COM对象,来简单地与各种系统交互,完成各种复杂的、⾃动化的操作。

⼀、与⽂件系统交互、运⾏应⽤程序

就像在Dos中⼀样,在PowerShell的交互界⾯上键⼊"dir"并回车,会显⽰当前⽂件夹下的⼦⽂件夹和⽂件信息。

PS D:\Projects\Practise\PowerShell> dir

Directory: D:\Projects\Practise\PowerShell

Mode LastWriteTime Length Name

---- ------------- ------ ----

d---- 1/23/2013 12:35 PM d1

d---- 1/23/2013 12:35 PM d2

-a--- 1/21/2013 8:38 PM 36314 alias.tx

-a--- 1/21/2013 8:32 PM 241530 cmdlets.

-a--- 1/18/2013 10:18 AM 888 errors.t

像这样的命令很多,⽐如echo "Hello", cd ..等等。从这⾥看来它就是⼀个命令⾏,实现了原来命令⾏的功能。但PowerShell是命令⾏的加强版吗,是命令⾏的超集吗?这个真不是,以后会专门说这个问题。

powershell 基础命令

powershell 基础命令

powershell 基础命令

PowerShell 基本命令

PowerShell 是一种强大的脚本语言和命令行界面,用于管理Windows 系统和自动化任务。以下是一系列基本命令,可帮助您入门:

导航命令

`Get-Location`<br>

显示当前路径。

`Set-Location`<br>

更改当前路径。

`Dir` 或 `ls`<br>

列出当前目录中的文件和文件夹。

`cd`<br>

快速更改目录。

文件和文件夹管理

`New-Item`<br>

创建新文件或文件夹。 `Remove-Item`<br> 删除文件或文件夹。 `Copy-Item`<br>

复制文件或文件夹。 `Move-Item`<br>

移动文件或文件夹。

命令管理

`Get-Command`<br>

查找系统中可用的命令。 `Help`<br>

显示特定命令的帮助信息。

作业管理

`Start-Job`<br>

在后台启动新作业。

`Stop-Job`<br>

停止正在运行的作业。

`Get-Job`<br>

获取有关作业状态的信息。

变量操作

`$variable`<br>

获取变量值。

`$variable = value`<br> 设置变量值。

`Get-Variable`<br>

显示系统中可用的变量。

比较操作符

`-eq`<br>

相等。

`-ne`<br>

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

PowerShell 是微软为Windows 环境所开发的shell 及脚本语言技术,这项全新的技术提供了丰富的控制与自动化的系统管理能力;而“脚本语言”(scripting languages)则是用来编写程序的计算机语言。脚本语言通常都有简单、易学、易用的特性,目的就是希望能让写程序的人(开发者)快速完成程序的编写工作。本文将简述脚本语言的起源与目的,并且介绍Windows PowerShell。

脚本语言的源起与目的

脚本语言是计算机程序语言(programming languages)的一种,因此也能让开发者藉以编写出让计算机听命行事的程序。但是「以简单的方式快速完成某些复杂的事情」通常是创造脚本语言的重要原则,基于这项原则,使得脚本语言通常比C、C++ 或Java 之类的「系统程序语言」(system programming languages)「简单」、「容易」,也让脚本语言另有一些所谓「脚本语言的特性」:

•语法和结构通常比较简单

•学习和使用通常比较简单

•通常以容易修改程序的「直译」作为执行方式,而不需要编译

•程序的开发产能优于执行效能

脚本语言源自早期文字模式的命令列计算机系统,在当时只能以键盘敲入命令才能操作计算机的情况下,为了减少某些需要不断重复敲入命令的情况,计算机操作系统的命令处理器(在UNIX 的世界这通常称为command shell)提供了「批次操作」(batch operation)的方式,让计算机操作者可以将一整个流程的命令,循序、逐行的编排在称为「批处理」(batch file,也称为batch jobs 或shell scripts)的文字文件,若有相同的操作需要处理,即可加载批次档而不需再次重复敲入指令。

Shell Script

由于批处理对命令列的计算机系统操作者帮助甚大,因此操作系统的命令处理器也不断加强功能,尤其加入了许多程序语言的重要元素,包括变量、循环、条件判断等等,让计算机操作不只是循序的执行命令,而能更精确的操控计算机系统的运作;这种程序设计通常称为shell programming。因此,不论是大型主机的系统操作员,或者是整个计算机环境的系统管理员、网络管理员,shell programming 都是相当重要的技能,这项技能可以有效且快速的管理辖下的计算机。

UNIX 系统的shell 相当多样,例如Bourne Shell(sh)、Bourne-Again Shell (bash)、Korn Shell(ksh)、C Shell(csh)等等;以下简述常见的UNIXshell。

•Bourne Shell(sh):这是历史悠久且重要的UNIX shell,是由贝尔实验室的研究员Stephen Bourne 为第七版的UNIX 所创造,这种shell 的执行档扩展名就是.sh。

•Bourne-Again Shell(bash):光从名称就能猜出bash 与sh 是有渊源(甚至说「血缘」)。bash 是由Brian Fox 于1987 年为GNU 所创造,1990 年起,Chet Ramey 成为主要的维护者。bash 是相当流行的shell,除了是大多数Linux 预设的shell,在许多UNIX-like 系统也有其踪迹(例如Mac OS X Tiger),甚至也能通过Cygwin 在Windows 系统执行。

•Korn Shell(ksh):是由贝尔实验室的研究员David Korn 在80 年代初期所创造,ksh 除了与sh 完全兼容,也包含了若干 C Shell 的功能。

• C Shell(csh):是由Bill Joy(后来创办了Sun公司)为BSD UNIX 系统所创造。csh 源自于第六版UNIX 的Thompson shell(是Bourne Shell 的前身),因为语法类似 C 语言而得名。

除了上述盛行于UNIX 环境的shell,其它操作系统也有专属的shell 或

shell 脚本语言,例如苹果Mac系统的AppleScript、IBM OS/2 的REXX (REstructured eXtended eXecutor)。而DOS 以及早期Windows 的shell 则是,但也因功能较弱,因此有4DOS、4NT 等软件可增强功能,Windows 2000 以及之后的Windows 则改以功能较强cmd.exe 作为Windows shell,并且以Windows Script Host 作为脚本语言执行环境,大幅提高了Windows shell 的可用性。而微软也将会推出功能更强的Windows shell,称为Windows PowerShell。

虽然现在许多计算机系统都提供了图形化的操作方式,但是却都没有因而停止提供文字模式的命令列操作方式,相反的,许多系统反而更加强这部份的功能,例如Windows 就不只加强了操作命令的功能和数量,也一直在改善shell programming 的方式。而之所以要加强、改善,当然是因为不够好;Windows 的图形化操作方式对单一客户端计算机的操作,已经相当方便,但如果是一群客户端计算机,或者是24 小时运作的服务器计算机,图形化操作方式有时会很不方便。

宏语言

宏语言也可视为脚本语言的分支,两者也实质上的相同之处。宏语言通常附属于某一种软件,例如微软Office、Visual Studio、Adobe Photoshop 都内建了宏语言的功能,使用者可利用软件所附的宏语言,达到自动化的结果(例如调整某个数据夹所有PSD 图文件的分辨率)。而这类宏语言也大多提供录制宏的功能,自动记录使用者的键盘按键,让使用者不必写程序,就能产生宏程序。此外,C 语言和汇编语言也有宏功能,是以搜寻及取代进行编译或组译之前的前置处理。

Windows PowerShell 诞生

UNIX 的世界有功能强大的shell,现在Windows 环境也有了;Windows

相关文档
最新文档