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
指定输出文件的路径。
是否必需? 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
指定分隔符以分隔属性值。默认值为逗号 (,)。输入一个字符,例如冒号 (:)。若要指定分号 (;),请将其括在引号中。
是否必需? False
位置? 2
默认值 , (comma)
是否接受管道输入? false
是否接受通配符? False
4.可以在已导出的CSV文件头忽略#命令行吗?这一行通常包含了类型信息,但是如果你想从一个特定文件中获取并忽略时要怎么做?
-NoTypeInformation []
省略 CSV 文件中的类型信息。默认情况下,CSV 文件的第一行包含“#TYPE”,后跟对象类型的完全限定名称。
是否必需? False
位置? named
默认值 false
是否接受管道输入? false
是否接受通配符? False
5.“Export-CliXML”和“Export-CSV”都可以通过创建并覆盖文件来修改系统,你可用什么参数来组织他们覆盖现有文件?还有什么参数可以在你输出文件前提醒并请求确认?
-NoClobber []
确保该 cmdlet 不会覆盖现有文件的内容。默认情况下,如果指定路径中存在文件,则 Export-Clixml 将在不发出警告的情况下覆盖该文件。
是否必需? False
位置? named
默认值 False
是否接受管道输入? false
是否接受通配符? False
-Confirm []
运行 cmdlet 之前提示你进行确认。
是否必需? False
位置? named
默认值 false
是否接受管道输入? false
是否接受通配符? False
演示:
6.Windows维护少数局部配置,包括一个默认分隔符列表。在美国系统中,分隔符是逗号。你如何让“Export-CSV”使用当前系统默认的分隔符而不是逗号?
解答:
我觉得作者的问题,应该是让回答以下内容,如不对,请大家提出来。
-UseCulture []
将当前区域性的列表分隔符用作项分隔符。默认值为逗号 (,)。
对于分发到全球用户的脚本,此参数非常有用。若要查找某个区域性的列表分隔符,请使用以下命令:(Get-Culture).TextInfo.ListSeparator。
是否必需? False
位置? named
默认值 Comma
是否接受管道输入? false
是否接受通配符? False
举例:
PS C:>get-process | export-csv processes.csv -UseCulture
此命令将计算机上表示进程的对象导出到当前目录中的 Processes.csv 文件。它使用 UseCulture 参数来指示 Export-CSV 使用由当前区域性的 ListSeparator 属性指定的分隔符。
更多资料请点击:获取资料