美文网首页
常用powershell命令

常用powershell命令

作者: BlackNeko | 来源:发表于2016-04-05 17:34 被阅读10837次

    教程:http://www.pstips.net/

    大小写不敏感

    直接输入cd 加文件目录就可以定位到相关目录内。

    执行.exe或.bat文件:

    .\fileName 
    

    清屏

    clear|cls 
    

    查看版本:

    $host.version
    //or
    Get-Host
    

    ESC : 清除输入行

    get-process : 查看当前服务列表

    文件重命名:

    Rename-Item FileName -NewName NewFileName
    

    FileName : 原文件名
    NewFileName : 新文件名

    批量重命名文件:

    $i = 0
     
    Get-ChildItem -Path c:\pictures -Filter *.jpg |
    ForEach-Object {
    $extension = $_.Extension
    $newName = 'pic_{0:d6}{1}' -f $i, $extension
    $i++
    Rename-Item -Path $_.FullName -NewName $newName
    }
    

    置数:

    set t pepelu
    echo $t
    

    output:pepelu

    $t = 233
    echo $t
    

    output : 233

    获取你的当前位置 (Get-Location)

    Get-Location
    

    output:
    Path
    C:\Documents and Settings\PowerUser

    设置你的当前位置 (Set-Location)

    Set-Location C:\Windows
    //or
    Set-Location -Path C:\Windows
    

    输入命令后,你将注意到你不会收到任何有关该命令影响的直接反馈。执行某项操作的大多数 Windows PowerShell 命令可生成很少的输出或根本不会生成输出,因为该输出并不总是有用。若要验证在你输入 Set-Location 命令时是否已成功更改目录,请在输入 Set-Location 命令时包括 -PassThru 参数:

    Set-Location -Path C:\Windows -PassThru
    

    output :
    Path
    C:\Windows

    可将 -PassThru 参数与WindowsPowerShell中的许多Set命令结合使用,以在没有默认输出的情况下返回有关结果的信息。

    PS C:\Windows> set t pepelu -PassThru
    
    Name                           Value
    ----                           -----
    t                              pepelu
    

    如果你位于 C:\Windows 文件夹中,则句点 (.) 表示 C:\Windows,而双句点 (..) 表示 C:,即:句点 (.) 表示当前目录,双句点 (..) 表示父目录。

    使用默认方式打开一个文件:.\FileName

    cd 和 chdir 都可以打开一个目录。

    使用文件、文件夹和注册表项:

    https://technet.microsoft.com/zh-cn/library/dd315381.aspx

    新建文件:

    type > %~dp0\a.txt
    //or
    echo a 2>FileName
    

    “2”表示错误输出的句柄,此例中没有错误输出,所以创建了没有内容的空文件。
    其实>默认都是重定向了句柄1,即标准输出句柄。比如cd.>a.txt,其实就是cd. 1>a.txt。
    同样,句柄3到9也可以使用在本例中,它们是未经定义的句柄,也不会有输出,如
    echo a 3>a.txt
    http://bits00.iteye.com/blog/1585651
    http://www.pstips.net/working-with-files-and-directories.html

    枚举文件:

    基本语法:Get-Command -Name Get-ChildItem -Syntax,可以通过使用 Get-ChildItem cmdlet 的参数来执行非常复杂的列出操作。

    • 列出所有包含的项 (-Recurse):
    //列出指定目录下的所有文件,包括子目录中文件
    Get-ChildItem -Path C:\WINDOWS -Recurse
    //列出当前目录下的所有文件,包括子目录中的文件
    Get-ChildItem -Recurse
    
    • 按名称筛选项 (-Name):
    //列出指定目录下的所有文件
    Get-ChildItem -Path C:\WINDOWS -Name
    //列出当前目录下的所有文件,只显示文件名
    Get-ChildItem -Name
    //列出当前目录下的指定文件,显示文件详细信息
    Get-ChildItem FileName
    
    • 强制列出隐藏的项 (-Force)

    正常情况下在文件资源管理器或 Cmd.exe 中不可见的项不会在 Get-ChildItem 命令的输出中显示。若要显示隐藏的项,请使用 Get-ChildItem 的 Force 参数。

    Get-ChildItem -Path C:\Windows -Force
    
    • 通配符:

    由于通配符匹配由 Windows PowerShell 引擎处理,因此接受通配符的所有 cmdlet 使用相同的表示法,并具有相同的匹配行为。Windows PowerShell 通配符表示法包括:

    1. 星号 (*) 匹配零个或多个出现的任何字符。
    2. 问号 (?) 完全匹配一个字符。
    3. 左括号 ([) 字符和右括号 (]) 字符括起一组要匹配的字符。

    若要在 Windows 目录中查找带有后缀 .log并且基名称中正好有五个字符的所有文件,请输入以下命令:

    Get-ChildItem -Path C:\Windows\?????.log
    

    若要在 Windows 目录中查找以字母 x 开头的所有文件,请键入:

     Get-ChildItem -Path C:\Windows\x*
    
    • 排除项 (-Exclude)

    你可以通过使用 Get-ChildItem 的 Exclude 参数来排除特定项。这可让你在单个声明中执行复杂的筛选。
    类似于 w32.dll 的表达式将找到满足条件的所有 DLL,但它也可能返回名称中包含“95”或“16”的 Windows 95 和 16 位 Windows 兼容性 DLL。你可以通过将 Exclude 参数与模式 [9516] 一起使用来忽略名称中含有任意这些数字的文件。

     Get-ChildItem -Path C:\WINDOWS\System32\w*32*.dll -Exclude *[9516]*
    
    • 混合使用 Get-ChildItem 参数
    Get-ChildItem -Path C:\Windows\*.dll -Recurse -Exclude [a-y]*.dll
    

    即使 Windows 文件夹中有两个以字母“z”开头的 DLL,也没有结果。
    由于我们已将通配符指定为路径的一部分,因此未返回任何结果。即使命令是递归的,Get-ChildItem cmdlet 仍然将项限制为 Windows 文件夹中名称以“.dll”结尾的项。
    若要指定名称匹配特殊模式的文件的递归搜索,请使用 -Include 参数。

     Get-ChildItem -Path C:\Windows -Include *.dll -Recurse -Exclude [a-y]*.dll
    

    Tab 键 : 自动提示

    文件处理命令:

    http://lzspf.blog.51cto.com/843701/919900

    打开指定文件目录:

    目录中间可以有空格

    explorer E:\Program Files
    //调用文件管理器,打开当前shell所在目录
    explorer .
    

    创建新目录:

    md DirName
    

    删除目录:

    del DirName
    //取消确认提示
    del DirName -recurse
    

    相关文章

      网友评论

          本文标题:常用powershell命令

          本文链接:https://www.haomeiwen.com/subject/himplttx.html