加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – Powershell输出格式

发布时间:2020-12-15 08:20:37 所属栏目:百科 来源:网络整理
导读:我正在使用C#开发一个Power shell Cmdlet,我想知道是否有一种方法可以控制我在Cmdlet本身写入Powershell的对象的格式.基本上,我有太多属性的对象可以在屏幕上轻松显示,我的Cmdlet使用WriteObject()将它们发送到Powershell 我希望我的cmdlet用户能够运行它们,
我正在使用C#开发一个Power shell Cmdlet,我想知道是否有一种方法可以控制我在Cmdlet本身写入Powershell的对象的格式.基本上,我有太多属性的对象可以在屏幕上轻松显示,我的Cmdlet使用WriteObject()将它们发送到Powershell

我希望我的cmdlet用户能够运行它们,并在Powershell控制台中读取返回的数据,就像使用命令提示符一样.不幸的是,Powershell试图在列中填充的属性数量意味着大多数都被截断,当我添加更多时,它会为每个属性提供自己的行,这更糟糕.

我已经看到了允许用户正确格式化数据的东西,但没有任何东西允许开发人员设置默认值.基本上我想要的是类似于属性我可以应用于被泵送到Powershell的对象的每个属性,它告诉Powershell是否显示每个属性(假设用户没有设置其他格式化选项).

(我试过把它们变成公共字段而不是属性,而Powershell仍然会显示它们)

解决方法

我假设你正在使用Power Shell 2.0.

如果您的模块名为MyModule,则可以在其旁边创建一个MyModule.Format.ps1xml文件,以描述Format-List,Format-Table等默认显示的属性.有关详细信息,请参阅Get-Help about_Format.ps1xml和Formatting File Overview.

要将格式文件链接到模块,可以创建module manifest并定义FormatsToProcess项. New-ModuleManifest cmdlet可以让你开始这个.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读