源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

探索PowerShell(五) PowerShell基础知识

  • 时间:2021-07-07 06:53 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:探索PowerShell(五) PowerShell基础知识
在PowerShell中,我们可以轻松的与数据、对象进行交互,为了简化我们访问外部数据,PowerShell允许我们像操作驱动器、文件一样对数据、对象等进行操作。 使用这条命令,查看我们已有的Providers:
get-psprovider 
[url=http://files.jb51.net/file_images/article/201212/2012120515334928.png][img]http://files.jb51.net/file_images/article/201212/2012120515334928.png[/img] [/url] 实际上,每一个Provider就是一个动态链接库(.dll),在PowerShell中也可以被称之为“管理单元”,在管理单元中,有详细的代码实现我们的各种操作。PowerShell甚至允许我们自己编写Provider:[url=http://msdn.microsoft.com/en-us/library/cc136763(VS.85).aspx]http://msdn.microsoft.com/en-us/library/cc136763(VS.85).aspx[/url] 我们对数据等的操作方式有很多,例如:
[b]cmdlet[/b] [b]功能[/b] [b]cmd command[/b] [b]alias[/b]
get-location 当前目录 pwd gl
set-location 改变操作目录 cd,chdir sl
new-item 新建文件或文件夹 ni
rename-item 重命名 rn rni
copy-item 复制 copy cpi
move-item 移动 move mi
remove-item 删除 del ri
set-item 设置内容 si
clear-item 删除内容 cli
mkdir 新建文件夹 md
set-content 设置内容 sc
get-content 获取内容 type gc
[b]PSDriver[/b] 可以通过PowerShell中的PSDriver来获取当前驱动器列表,基本上所有的Provider都有一个唯一的PSDriver,但是文件系统和注册表却是个例外,通过下面的命令查看:
get-psdriver 
[url=http://files.jb51.net/file_images/article/201212/2012120515334929.png][img]http://files.jb51.net/file_images/article/201212/2012120515334929.png[/img] [/url] 注意:上图中的"Name"在显示时并没有显示冒号(:),但是我们在使用时,一定要加上的,如alias:、c:等。 [b]环境变量[/b] PowerShell中的环境变量类似于CMD中的"set"命令,可以使用如下命令查看当前机器上的环境变量设置:
cd env:  
ls 
[url=http://files.jb51.net/file_images/article/201212/2012120515334930.png][img]http://files.jb51.net/file_images/article/201212/2012120515334930.png[/img] [/url] 我们试着获取一些环境变量的值。
ls OS
显示所有属性:
ls OS | format-list * 
[url=http://files.jb51.net/file_images/article/201212/2012120515334931.png][img]http://files.jb51.net/file_images/article/201212/2012120515334931.png[/img] [/url] 再试试创建新的环境变量:
new-item -path . -Name New -Value “New”<enter> 
[url=http://files.jb51.net/file_images/article/201212/2012120515334932.png][img]http://files.jb51.net/file_images/article/201212/2012120515334932.png[/img] [/url] 下面,我们接着认识一下在"get-childitem"时所显示的"Mode"。 [url=http://files.jb51.net/file_images/article/201212/2012120515334933.png][img]http://files.jb51.net/file_images/article/201212/2012120515334933.png[/img] [/url] 第一位:d表示文件夹 -表示目录 后四位(a、r、h、s):a存档 r只读 h隐藏 s系统 -表示该位未被设置 在默认情况下,"get-childitem"是不会显示出隐藏文件的。因此,我们需要使用参数"-force"。
ls -force <enter> 
那么新创建文件呢?我们试试如下命令:
new-item newfile 
[url=http://files.jb51.net/file_images/article/201212/2012120515334934.png][img]http://files.jb51.net/file_images/article/201212/2012120515334934.png[/img] [/url] 此时要求输入文件类型,即"file"、"directory",我们使用"f"、"d"即可。 或者,在新建时使用参数:   [b]PowerShell中的Function[/b] PowerShell中提供了一个引擎,以供我们调用各种函数来实现功能。我们先看看自带函数:
cd function:  
ls 
[url=http://files.jb51.net/file_images/article/201212/2012120515334935.png][img]http://files.jb51.net/file_images/article/201212/2012120515334935.png[/img] [/url] 接下来,用之前介绍过的cmdlet看看"clear-host"函数内容吧:
get-content clear-host 
[url=http://files.jb51.net/file_images/article/201212/2012120515334936.png][img]http://files.jb51.net/file_images/article/201212/2012120515334936.png[/img] [/url] 因此,我们可以为了方便,尽可能的创建一些代码块,实现特定功能,剩下要做的就只是调用了。是不是很方便呢?在后面的教程中我会详细介绍自己编写函数来实现功能调用。 [b]注册表[/b] 在PowerShell中我们可以像操作文件一样操作注册表。PowerShell允许我们对HKCU与HKLM进行操作。 HKCU:HKEY_CURRENT_USER HKLM:HKEY_LOCAL_MACHINE 试试下列命令:
cd hklm:  
cd software  
ls  
[b]证书[/b]
cd cert:  
ls 
[url=http://files.jb51.net/file_images/article/201212/2012120515334937.png][img]http://files.jb51.net/file_images/article/201212/2012120515334937.png[/img] [/url] 导出看看吧~
ls -Recurse | Export-CSV “d:\Cert.csv”
[url=http://files.jb51.net/file_images/article/201212/2012120515334938.png][img]http://files.jb51.net/file_images/article/201212/2012120515334938.png[/img] [/url] 好了,这一节内容就到这里~东西比较杂,也比较琐碎,但是这些将大大加深我们对PowerShell的理解与认识,以帮助我们以后更好的学习。 也到周末了,愿各位周末快乐!感谢对本博客的关注~谢谢!
new-item newfile -type f
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部