【原创】Windows PowerShell 实战指南-动手实验-6.7

1.在控制台运行“Get-Service| Export-CSVservices.csv| Out-File”时会发生什么情况?为什么会这样?
解答:

会报错如下:

out-file : 无法处理参数,因为参数“path”的值为空。请将参数“path”的值更改为非空值。
所在位置 行:1 字符: 41
+ Get-Service | export-csv services.csv | out-file
+ ~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Out-File],PSArgumentNullException
+ FullyQualifiedErrorId : ArgumentNull,Microsoft.PowerShell.Commands.OutFileCommand

原因是:

“Out-File” Cmdlet必须指定 -filepath,通过使用help out-file -full,可看到如下说明:

-FilePath <String>
指定输出文件的路径。

是否必需? True
位置? 1
默认值
是否接受管道输入? false
是否接受通配符? False

2.除了获取一个或多个服务及以管道方式传输到“stop-Service”之外,“stop-service”服务还提供什了其他什么方式让你指定服务或停止服务?有什么方式可以在不使用“Get-Service”的前提下停止一个服务?

解答:

通过“help stop-Service -full”,我们能看到如下提示:

Stop-Service cmdlet 为每一个指定的服务向 Windows 服务控制器发送一条停止消息。你可以通过服务名称或显示名称来指定服务,也可以使用 InputObject 参数传递一个服务对象来表示要停止的服务。

可以通过使用能够输入内容的命令来进行服务停止,如:“stop-service (get-content  ./service.txt ) -whatif”,-whatif  能够知道此命令做了什么操作。

Stop-Service (Get-Content .\service.txt ) -WhatIf
WhatIf: 正在目标“Printer Extensions and Notifications (PrintNotify)”上执行操作“Stop-Service”。

3.如何穿件一个竖线分隔符文件替代一个逗号分隔符(CSV)文件?你可以使用“Export-CSV”命令,但是应该使用什么参数?

解答:

-Delimiter <Char>
指定分隔符以分隔属性值。默认值为逗号 (,)。输入一个字符,例如冒号 (:)。若要指定分号 (;),请将其括在引号中。

是否必需? False
位置? 2
默认值 , (comma)
是否接受管道输入? false
是否接受通配符? False

4.可以在已导出的CSV文件头忽略#命令行吗?这一行通常包含了类型信息,但是如果你想从一个特定文件中获取并忽略时要怎么做?

-NoTypeInformation [<SwitchParameter>]
省略 CSV 文件中的类型信息。默认情况下,CSV 文件的第一行包含“#TYPE”,后跟对象类型的完全限定名称。

是否必需? False
位置? named
默认值 false
是否接受管道输入? false
是否接受通配符? False

5.“Export-CliXML”和“Export-CSV”都可以通过创建并覆盖文件来修改系统,你可用什么参数来组织他们覆盖现有文件?还有什么参数可以在你输出文件前提醒并请求确认?

-NoClobber [<SwitchParameter>]
确保该 cmdlet 不会覆盖现有文件的内容。默认情况下,如果指定路径中存在文件,则 Export-Clixml 将在不发出警告的情况下覆盖该文件。

是否必需? False
位置? named
默认值 False
是否接受管道输入? false
是否接受通配符? False

-Confirm [<SwitchParameter>]
运行 cmdlet 之前提示你进行确认。

是否必需? False
位置? named
默认值 false
是否接受管道输入? false
是否接受通配符? False

演示:

【原创】Windows PowerShell 实战指南-动手实验-6.7

6.Windows维护少数局部配置,包括一个默认分隔符列表。在美国系统中,分隔符是逗号。你如何让“Export-CSV”使用当前系统默认的分隔符而不是逗号?

解答:

我觉得作者的问题,应该是让回答以下内容,如不对,请大家提出来。

-UseCulture [<SwitchParameter>]
将当前区域性的列表分隔符用作项分隔符。默认值为逗号 (,)。

对于分发到全球用户的脚本,此参数非常有用。若要查找某个区域性的列表分隔符,请使用以下命令:(Get-Culture).TextInfo.ListSeparator。

是否必需? False
位置? named
默认值 Comma
是否接受管道输入? false
是否接受通配符? False

举例:

PS C:\>get-process | export-csv processes.csv -UseCulture

此命令将计算机上表示进程的对象导出到当前目录中的 Processes.csv 文件。它使用 UseCulture 参数来指示 Export-CSV 使用由当前区域性的 ListSeparator 属性指定的分隔符。

欢迎各位关注左下角的微信公众号,第一时间掌握本站最新信息和IT前沿信息,同时公众号中会不断更新私有IT资源哟!!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Young文人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值