zoukankan      html  css  js  c++  java
  • PowerShell学习笔记五_模块

    PowserShell其他技巧

    1. 执行完一个ps1文件后,不回收

    有一个场景,在fun.ps1中,仅仅写了一段

    Funtion fun([String] input)

    {

    }

    然后打开PowerShell之后,输入.fun.ps1,回车,因为fun.ps1中,没有调用fun,所以什么事情都没有发生

    随后,fun函数也会从内存中清空,按Tab键也不会补全

    为了避免这个情况,要输入:

    . .fun.ps1 ,   .[空格].fun.ps1

    然后按tab键就会出来了

    原理:PowerShell为一个.ps1文件建一个堆栈,使用".[空格].fun.ps1" 就不回收这个堆栈

    2. 正则表达式测试: “内容” -match "表达式"

    3. 获取文件内容:$content = Get-Content -path C:userpyldestopaa.txt

    #虽然$content|get-member是[string]类型的,但是$content[1]就是获取第2行的


    但是,如果每次都要输入. .fun.ps1 ,才能开始工作,就比较麻烦

    可以将fun.ps1搞得像PowserShell原生命令一样,”注册“到电脑中

    #当函数按照标准的PS命名时,可以视为cmdlet,如fun是方法,而Get-xxxx则可以视为Cmdlet

     模块的发布

    模块是以文件夹的形式存在,里面包含.psd1文件,.psm1文件

    .psm1文件是模块文件,.psd1是模块调用的文件

    .psm1相当于入口了

    模块文件夹放在C:Program Files (x86)WindowsPowerShellModules

    导入模块:

    Import-Module c:XXXmodule1.psm1

    根据.ps1生成.psm1

    New-ModuleManifest -Path $env:ProgramFilesWindowsPowerShellModulesMyScriptModuleMyScriptModule.psd1 -RootModule MyScriptModule -Author 'Mike F Robbins' -Description 'MyScriptModule' -CompanyName 'mikefrobbins.com'

    注意的是,RootModule一定要填,而且

  • 相关阅读:
    华为机试练习(一)
    LM拟合算法
    5.1 模块化程序设计
    第3周 运算的流程控制
    KEGG数据库介绍
    topGO
    GO.db
    Bioconductor应用领域之基因芯片
    org.Hs.eg.db包简介(转换NCBI、ensemble等数据库中基因ID,symbol等之间的转换)
    Bioconductor的历史
  • 原文地址:https://www.cnblogs.com/pylblog/p/14298674.html
Copyright © 2011-2022 走看看