现在的位置: 首页 > 综合 > 正文

PowerShell基础教程(5)——如何自定义 Windows PowerShell

2013年11月04日 ⁄ 综合 ⁄ 共 2792字 ⁄ 字号 评论关闭

PowerShell基础教程(5)——如何自定义 Windows PowerShell

            

本节介绍可以自定义 Windows PowerShell 以最大限度地满足您的需要的几种方法。

检查执行策略

脚本是一种功能非常强大的工具但是它可能被滥用于恶意目的。为保护用户数据和操作系统的完整性,Windows PowerShell 包括了若干安全功能,其中之一是执行策略。

Windows PowerShell 执行策略确定是否允许脚本运行如果它们可以运行则确定它们是否必须经过数字签名。它还确定是否可以加载配置文件。

默认的执行策略 Restricted 是最安全的执行策略。它不允许任何脚本运行,而且不允许加载任何配置文件,其中包括 Windows PowerShell 配置文件。您仍然能够以交互方式使用 Windows PowerShell

但是如果要运行脚本或加载配置文件则可以更改系统上的执行策略。有关信息和说明,请键入:

get-help about_signing

若要查找系统上的执行策略请键入

get-executionpolicy

若要更改系统上的执行策略请使用 Set-ExecutionPolicy cmdlet。例如,若要将执行策略更改为 RemoteSigned,请键入:

set-executionpolicy remotesigned

Windows PowerShell 执行策略保存在 Windows 注册表中即使您卸载并重新安装 Windows PowerShell 也保留执行策略。

Windows Powershell 配置文件

将别名、函数和变量添加到 Windows PowerShell 实际上仅将它们添加到当前的 Windows PowerShell 会话。如果退出会话或者关闭 Windows PowerShell,则更改将丢失。

若要保留这些更改可以创建 Windows PowerShell 配置文件然后将别名、函数和变量添加到配置文件。每次启动 Windows PowerShell 时,都会加载该配置文件。

若要加载配置文件Windows PowerShell 执行策略必须允许您加载配置文件。如果它不允许,则加载配置文件的尝试将失败,而且 Windows PowerShell 显示一条错误消息。

了解配置文件

Windows PowerShell 中可以有四个不同的配置文件。配置文件按加载顺序列出。较特定的配置文件优先于较不特定的配置文件(如果它们适用)。

·      %windir%/system32/WindowsPowerShell/v1.0/profile.ps1

此配置文件适用于所有用户和所有外壳程序。

·      %windir%/system32/WindowsPowerShell/v1.0/ Microsoft.PowerShell_profile.ps1

此配置文件适用于所有用户但仅适用于 Microsoft.PowerShell 外壳程序。

·      %UserProfile%/My Documents/WindowsPowerShell/profile.ps1

此配置文件仅适用于当前用户但影响所有外壳程序。

·      %UserProfile%//My Documents/WindowsPowerShell/Microsoft.PowerShell_profile.ps1

此配置文件仅适用于当前用户和 Microsoft.PowerShell 外壳程序。

创建配置文件

可以创建、共享和分发配置文件以便在较大的企业中强制实施 Windows PowerShell 的一致视图。

配置文件不是自动创建的。若要创建配置文件请在指定位置中创建具有指定名称的文本文件。

通常将使用特定于用户、特定于外壳程序的配置文件称为用户配置文件。此配置文件的位置存储在 $profile 变量中。

若要确定是否已创建用户配置文件请键入

test-path $profile

如果存在该配置文件则响应为 True否则响应为 False

若要创建用户配置文件,请键入:

new-item -path $profile -itemtype file -force

若要在记事本中打开配置文件,请键入:

notepad $profile

若要创建其他配置文件之一如适用于所有用户和所有外壳程序的配置文件请键入

new-item -path C:/Windows/System32/WindowsPowerShell/v1.0/profile.ps1 -itemtype file -forc

对于 Windows PowerShell 中的环境变量不能使用%表示法。若要标识 Windows 环境变量,请使用以下格式:$env:<变量>,如 $env:windir

new-item -path C:/Windows/System32/WindowsPowerShell/v1.0/profile.ps1 -itemtype file -force

如果在记事本中创建配置文件然后保存它请务必将文件名括在引号中。例如:

"profile.ps1"

如果没有引号则记事本会将 .txt 文件扩展名追加到文件 Windows PowerShell 将无法识别它。

使用配置文件存储日常使用的别名、函数和变量。一个非常有用的函数是用于在喜爱的文本编辑器中打开配置文件的函数。例如,以下命令创建一个名为 pro 的函数,该函数用于在记事本中打开用户配置文件。

function pro { notepad $profile }

有了设计良好的配置文件就可以更轻松地使用 Windows PowerShell 和管理系统。

 

严禁抄袭和谢绝任何形式的私自转载,如需转载,请与本人联系,谢谢!

好书推荐,精彩明天继续······

 向有一定开发经验的朋友们推荐两本.NET方面的经典著作,中文版在国内深受读者好评!

1.C#.NET实战:平台、语言与框架》(原书名:Practical .Net2 and C#2: Harness the Platform, the Language, the Framework

 

(1)       C#传奇经典

(2)       世界众多.NET专家好评如潮的秘籍

(3)       国内四位MVP联袂翻译

(4)       深入全面,知识密集,代码丰富

更多详细信息: http://www.china-pub.com/37188

 

2.ASP.NET 2.0揭秘.1》(原书名: ASP.NET 2.0 Unleashed

 

(1)   微软技术大师力作

(2)   四位微软MVP联袂翻译,众多MVP鼎力推荐

(3)   代码密集,提供C#VB.NET两种版本

(4)   有史以来最成功的ASP.NET著作的最新版,有“ASP.NET圣经之誉。

更多详细信息: http://www.china-pub.com/36237

抱歉!评论已关闭.