探索PowerShell(五) PowerShell基础知识
在PowerShell中,我们可以轻松的与数据、对象进行交互,为了简化我们访问外部数据,PowerShell允许我们像操作驱动器、文件一样对数据、对象等进行操作。
使用这条命令,查看我们已有的Providers:
get-psprovider
实际上,每一个Provider就是一个动态链接库(.dll),在PowerShell中也可以被称之为“管理单元”,在管理单元中,有详细的代码实现我们的各种操作。PowerShell甚至允许我们自己编写Provider:http://msdn.microsoft.com/en-us/library/cc136763(VS.85).aspx
我们对数据等的操作方式有很多,例如:
cmdlet | 功能 | cmd command | alias |
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 |
PSDriver
可以通过PowerShell中的PSDriver来获取当前驱动器列表,基本上所有的Provider都有一个唯一的PSDriver,但是文件系统和注册表却是个例外,通过下面的命令查看:
get-psdriver
注意:上图中的"Name"在显示时并没有显示冒号(:),但是我们在使用时,一定要加上的,如alias:、c:等。
环境变量
PowerShell中的环境变量类似于CMD中的"set"命令,可以使用如下命令查看当前机器上的环境变量设置:
cd env:
ls
我们试着获取一些环境变量的值。
ls OS
显示所有属性:
ls OS | format-list *
再试试创建新的环境变量:
new-item -path . -Name New -Value “New”<enter>
下面,我们接着认识一下在"get-childitem"时所显示的"Mode"。
第一位:d表示文件夹 -表示目录
后四位(a、r、h、s):a存档 r只读 h隐藏 s系统 -表示该位未被设置
在默认情况下,"get-childitem"是不会显示出隐藏文件的。因此,我们需要使用参数"-force"。
ls -force <enter>
那么新创建文件呢?我们试试如下命令:
new-item newfile
此时要求输入文件类型,即"file"、"directory",我们使用"f"、"d"即可。
或者,在新建时使用参数:
PowerShell中的Function
PowerShell中提供了一个引擎,以供我们调用各种函数来实现功能。我们先看看自带函数:
cd function:
ls
接下来,用之前介绍过的cmdlet看看"clear-host"函数内容吧:
get-content clear-host
因此,我们可以为了方便,尽可能的创建一些代码块,实现特定功能,剩下要做的就只是调用了。是不是很方便呢?在后面的教程中我会详细介绍自己编写函数来实现功能调用。
注册表
在PowerShell中我们可以像操作文件一样操作注册表。PowerShell允许我们对HKCU与HKLM进行操作。
HKCU:HKEY_CURRENT_USER
HKLM:HKEY_LOCAL_MACHINE
试试下列命令:
cd hklm:
cd software
ls
证书
cd cert:
ls
导出看看吧~
ls -Recurse | Export-CSV “d:\Cert.csv”
好了,这一节内容就到这里~东西比较杂,也比较琐碎,但是这些将大大加深我们对PowerShell的理解与认识,以帮助我们以后更好的学习。
也到周末了,愿各位周末快乐!感谢对本博客的关注~谢谢!
new-item newfile -type f
- 【探索PowerShell 】【五】PowerShell基础知识
- Android 艺术开发探索读后感-view基础知识
- [C#基础知识系列]集合1——ArrayList小探索
- PowerShell基础知识
- 使用Code First建模自引用关系笔记 asp.net core上使用redis探索(1) asp.net mvc控制器激活全分析 语言入门必学的基础知识你还记得么? 反射
- ASN.1探索 - 2 基础知识(2)(转)
- (3)Powershell基础知识(一)
- PowerShell(一)基础知识
- 探索PowerShell(六) 脚本基础简要
- ASN.1探索 - 2 基础知识(3)(转)
- ASN.1探索 - 2 基础知识(2)
- Java基础知识之容器(一:容器整体框架探索)
- [C#基础知识系列]——装箱和拆箱探索总结
- (4)Powershell基础知识(二)
- 《Android 开发艺术探索》——View 事件体系--View基础知识 (学习笔记)
- [原创][PowerShell教程][02]PowerShell基础知识之一
- PowerShell面向对象编程基础知识总结
- PowerShell中的变量基础知识介绍
- 【探索PowerShell 】【六】脚本基础简要
- ASN.1探索 - 2 基础知识(1)