powershell - 在powershell中检查数组中的各个元素
问题描述
我有两个数组,每个数组包含三个元素(文件名部分)。我需要连接第一个数组的第一个元素和第二个数组的第一个元素并测试是否不为空以及组合(文件名)是否存在,同样我需要以相同的方式对其他两个元素执行此操作。
$file_nameone_array = ( table, chair, comp)
$file_nametwo_array = ( top, leg , cpu)
foreach ($input_file in $file_nameone_array) {
foreach ($input_rev in $file_nametwo_array) {
$path = "D:\$input_file-$input_rev.txt"
If (test-path $path -pathtype leaf) {
write-host "$path exists and not null"}
else{
write-host "$path doesnot exist"
exit 1}
我希望测试“table-top.txt”、“chair-leg.txt”、“comp-cpu.txt”,而我的代码检查“table-leg.txt”并退出说table-leg.txt不存在.
解决方案
这听起来像是家庭作业的编码问题(即你应该弄清楚的东西),所以我只会给你提示而不是答案。
- 您的数组元素需要用引号括起来。
- 用于
Write-Output $path
查看您实际检查的内容。 - 使用常规
for
循环 - 这是写入数组中第一个元素的输出的语法:
Write-Output "$($file_nameone_array[0])"
希望你能从中得到这个答案。
推荐阅读
- microchip - Microchip MPLABX IDE V5.35 conf:默认显示空白屏幕
- r - 在 R 中验证多边形矩阵中的矢量坐标
- c# - 一旦文本框的值为 0,如何使文本框为空
- c# - C# 泛型无法从 TypeA 转换为 TypeB
- php - Laravel 使用默认凭据发送邮件
- python - 如何在 Django 中通过 group by 获得额外的列?
- linux - terraform 脚本中未触发 custom_data 参数
- java - Netbeans11 Ubuntu 中的 Web 启动
- android - 主线程的Handler如何处理生命周期事件?
- c# - 在 Azure Devops 中使用 NuGet 创建引用