初识powershell、nuget powershell 调试

补充

  • 此文仅当做powershell的初步认识体验,关于nuget包里此脚本的使用官方已在vs2017停止支持,请看此文文末

前言

老早就听说powershell很牛逼,但是没真正用过,这两天刚好用到,顺便写一下有关的,可能以后用得到的东西。本来想记一下这次使用过程中用到的一些操作的,就是这么巧,发现了个很不错的教程网站,于是我就可以偷懒了,哈哈。

相关资料

  • 非官方在线教程网站

    • www.pstips.net
  • 官方文档
    • 入门
    • 基本指南
    • 操作系统要求
    • Windows PowerShell ISE
    • 运行远程命令

在nuget安装包的时候进行powershell调试

调试相关

  • 在项目需要用到nuget包NuGetDebugTools
  • 按照github上教程操作
    • 程序包管理器控制台输入相关命令,在安装需要调试的nuget包的时候就会弹出一个输入框和powershell控制台,输入框内输入命令可进行调试操作,还可以输入变量或者表达式以便在powershell控制台观察结果
    • 添加调试器

      Add-Debugger

      或者

      Add-Debugger -ReadHost
    • 设置需要调试的脚本名

      Set-PSBreakpoint -Command init.ps1, install.ps1, uninstall.ps1
    • 新建项目,安装要调试的nuget包,当命中上一步设置断点脚本时,调试输入框就会出现,执行?就会出现一堆操作提示

      s, StepInto  Step to the next statement into functions, scripts, etc.
      v, StepOver  Step to the next statement over functions, scripts, etc.
      o, StepOut   Step out of the current function, script, etc.
      c, Continue  Continue operation (also on empty input).
      q, Quit      Stop operation and exit the debugger.
      ?, h         Write this help message.
      k            Write call stack (Get-PSCallStack).
      K            Write detailed call stack using Format-List.<n>          Write debug location in context of <n> lines.
      +<n>         Set location context preference to <n> lines.
      k <s> <n>    Write source at stack <s> in context of <n> lines.w            Restart watching the debugger output file.
      r            Write last PowerShell commands invoked on debugging.
      <command>    Invoke any PowerShell <command> and write its output.
    • 关于调试nuget包中ps1脚本的讨论
  • 注意
    • nuget包好像分全局安装和在项目里面局部安装,没试过不知道,猜的
    • 打开vs之后调出nuget包管理器控制台安装的方式应该算全局安装,然后在各个项目里面安装包都可以调试
    • 我是在项目里面安装的NuGetDebugTools,也一样能用

编写nuget包ps1脚本可能用到的东东

  • param($installPath, $toolsPath, $package, $project)文件的第一行这四个参数分别是nuget包的路径、脚本路径、包本身的对象、安装此包的项目对象
  • 有时候需要将部分文件的操作改成始终复制到输出目录
  • nuget中ps1脚本的代码示例

总结

  • 由于完全没用过,什么姿势都不会,要干嘛完全是问度娘的,资料多还好,不多的时候找不到能用的就无计可施了,找不到组织真的有点盲目。所以学习新的东西要先花点时间找下给力的文档或者教程(什么叫给力?官方的文档不给力吗?嘿嘿,我只想说你们开心就好)。可以是官方文档、官方社区、第三方社区或论坛、还有国外的(英文关键字搜索)。
  • 最便捷的方法是找身边相关领域的大牛,有大牛你还找什么教程啊,走起!
  • 无论是什么,基本上都有它的套路,摸清楚了套路学的就快了。比如powershell脚本的,执行环境-执行入口-数据类型-变量声明和使用-基本操作-执行结束。再复杂点还有各种生命周期事件,变量作用域等等,快速上手使用基本不用管这么多,只要能哐哐哐跑起来,管它三七二十一。

转载于:https://www.cnblogs.com/xxred/p/8997305.html

初识powershell、nuget powershell 调试相关推荐

  1. 了解PowerShell命令——PowerShell三分钟(二)

    好了,之前我们讲过学习PowerShell的必要性,那么今天开始实际操作下PowerShell. PowerShell预装在Windows 7以上的系统中,无需额外下载,即可使用 你可以在开始菜单中找 ...

  2. powershell提取html字段,Windows PowerShell:PowerShell 中的 HTML 报告

    Windows PowerShell:PowerShell 中的 HTML 报告 08/17/2016 本文内容 事实上,您可以使用 Microsoft Windows PowerShell Cmdl ...

  3. bat运行exe 自动确认_无powershell运行powershell方法总结

    原创: lengyi 合天智汇 今天给大家带来的是,无powershell运行powershell的一些姿势的分享,由于powershell的特性,使得它很受渗透测试爱好者的喜爱,当然也催生了像ASM ...

  4. bat脚本交互输入_测评 | 不使用powershell运行 PowerShell 脚本的工具汇总

    不使用 powershell.exe 的情况下,可以运行 powershell 脚本和命令么? 可以的! 本文总结了6款可直接运行 powershell 脚本和命令的工具,献给所有的渗透测试人员和红队 ...

  5. 第一个PowerShell脚本——PowerShell三分钟(九)

    前面把基础知识讲了一遍,现在我们开始写一个最初级的脚本 写脚本的工具有很多,有文本文档,有PowerShell ISE,PowerShell Studio等,这里选用系统自带的PowerShell I ...

  6. Azure PowerShell (1) PowerShell整理

    <Windows Azure Platform 系列文章目录> 把之前Azure ASM的PowerShell都整理好了. https://github.com/leizhang1984/ ...

  7. 一篇万字长文读懂微软PDB、SourceLink——.net core之nuget 包调试

    序言 在大前年,为了说服框架组采用Nuget包的形式分发框架类库,我费了老鼻子的劲也没有取得成功,其中最致命的一个问题是,nuget包不能获得源码调试级的支持,在分发和包的管理形式上其比其他方案都优秀 ...

  8. PowerShell变量——PowerShell三分钟(七)

    有了前面的PowerShell基础,今天我们来学习一个可以极大提升PowerShell效率的用法--变量 简答来说呢,变量就是在内存中的一个带有名字的盒子~~~~~你可以把所有想存放的东西都放到这个& ...

  9. 从零开始学PowerShell(10)PowerShell中的子表达式

    在PowerShell中你或许看到过类似@(......), $(......),(......)这类使用圆括号将一系列语句包裹在一起的写法形式出现在脚本中.今天我们要说的就是这几种表达式,它们被称作 ...

最新文章

  1. Docker最佳实践-部署LNMP环境
  2. 爱卡创誓记java刷钱_【178创誓记】快速升级:40到50级只需要两天的黄金刷
  3. 360剑灵洪门崛起服务器维护,剑灵洪门崛起————【维护】8月1日更新维护公告...
  4. linux默认安装python_Linux下安装python
  5. [转]何时使用委托而不使用接口(C# 编程指南)
  6. windows下的文件服务器监控
  7. java delayqueue_Java DelayQueue size()用法及代码示例
  8. Go异常处理——defer、panic、recover
  9. 大数据模型-银行客户细分与个人客户流失预警
  10. spectral-cluster聚类算法详解
  11. KONG 之 rate-limiting
  12. 阳光,无论清浅或明媚
  13. Java jmap与jcmd命令dump内存heap堆
  14. Python_OpenCV对摄像头图像进行对焦判断
  15. loadrunner 运行脚本-Run-time Settings之Miscellaneous设置-(转载)
  16. date命令显示格式化的年月日时分秒
  17. ZOJ 4062 Plants vs. Zombies 2018 ICPC 青岛站 E Plants vs. Zombies
  18. linux下获取文件大小
  19. python京东自动签到_python实现自动登录 签到 京东 苏宁
  20. 当当·亚马逊·京东等加密的电子书转为PDF

热门文章

  1. 【译】Jumping into Solidity — The ERC721 Standard (Part 2)
  2. 爱加密Android APk 原理解析
  3. python中链表和数组_Python
  4. web怎么用代码创造表格_Python新工具:用三行代码提取PDF表格数据
  5. JZOJ 4161. 于神之怒
  6. JZOJ 5268. 旅行
  7. Android宫格动态列,Android实现宫格图片连续滑动效果
  8. 怎样批量调整word 图片大小?
  9. 20201014 《人工智能与大数据》第1节课 笔记
  10. hdu5399(模拟)