如何在 PowerShell 中将目录作为变量导出和导入

抗体

第一个脚本从目录的用户处获取输入:例如:D:\Test1 D:\Test2

$Dir1=Read-Host -Prompt "Enter first location" |Out-file -FilePath .\directories.csv -Append
    $Dir2=Read-Host -Prompt "Enter 2nd location (or leave blank)" |Out-file -FilePath .\directories.csv -Append

在第二个脚本中,我有:

$Dir=Import-Csv 'D:\directories.csv'
$Dir[0]

但它没有正确打印出来(打印所有目录而不是一个)我需要将每个目录分配给不同的变量

PS 初学者在这里请简单解释一下

基思·米勒

这是我的看法:

提示循环中的路径并以数组形式收集,直到没有条目为止:

$DirPaths = @()
Do {
    $DirPaths += Read-Host -Prompt "Enter path (leave blank to end)" 
} Until ($DirPaths[-1] -eq '')

将除空字符串以外的所有元素保存到文本文件中:

$DirPaths.Where({ $_ -eq '' }, 'Until') | Set-Content .\DirPaths.txt

每行一个 sngle 元素且没有标题行,就不需要 .csv

用于Get-Content以路径数组的形式检索文件

$Dir = Get-Content .\DirPaths.txt

然后,您可以获得路径计数并单独访问,如下所示:

$Dir.Count
$Dir[0]

例子:

>$DirPaths = @()
>> Do {
>>     $DirPaths += Read-Host -Prompt "Enter path (leave blank to end)"
>> } Until ($DirPaths[-1] -eq '')
Enter path (leave blank to end): Path1
Enter path (leave blank to end): Path2
Enter path (leave blank to end): Path3
Enter path (leave blank to end):
PS C:\...\Sandbox>$DirPaths.Where({ $_ -eq '' }, 'Until') | Set-Content .\DirPaths.txt
PS C:\...\Sandbox>$Dir = Get-Content .\DirPaths.txt                                     PS C:\...\Sandbox>$Dir.Count
3
PS C:\...\Sandbox>$Dir[0]
Path1
PS C:\...\Sandbox>

编辑:

此代码使用以下BrowseForFolder方法:

$Shell = New-Object -ComObject shell.application
$Folders = @()
Do {
    $Folders += $Shell.BrowseForFolder( 0, 'Prompt', 0, 17 )
} Until ( $Null -eq $Folders[-1] )

$Folders.Self.Path | Set-Content .\DirPaths.txt

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在PowerShell中将数据导出到CSV?

来自分类Dev

如何在PowerShell中将数据导出到CSV?

来自分类Dev

如何在powershell中将数组导出到csv?

来自分类Dev

如何在PowerShell中将DateTime作为参数传递?

来自分类Dev

您如何在Powershell中将变量嵌入HTML?

来自分类Dev

如何在Powershell中将布尔结果放入变量中?

来自分类Dev

如何在PowerShell中显示当前目录?

来自分类Dev

如何在RabbitMQ中将消息导入和导出到队列

来自分类Dev

如何正确导出和导入也具有子目录作为挂载点的NFS共享?

来自分类Dev

如何正确导出和导入也具有子目录作为挂载点的NFS共享?

来自分类Dev

如何在powershell中导入csv替换字符并导出保存在blob中的csv

来自分类Dev

如何在Powershell v5模块中导出类

来自分类Dev

如何在 Powershell 中格式化模式文本导出

来自分类Dev

Powershell - 如何在导入 csv 时忽略双行

来自分类Dev

如何在当前Powershell目录中启动WSL终端?

来自分类Dev

如何在Powershell脚本中授予目录权限

来自分类Dev

如何在Powershell中仅删除或记录顶级目录?

来自分类Dev

如何在Powershell中列出目录中的所有项目

来自分类Dev

如何在Powershell中将Ctrl + /分配为KeyGesture

来自分类Dev

如何在PowerShell中将命名参数定义为[ref]

来自分类Dev

如何在PowerShell中将SID转换为帐户名?

来自分类Dev

如何在Powershell中将参数传递给批处理

来自分类Dev

如何在Powershell中将“成员”管道传输到csv

来自分类Dev

如何在PowerShell中将字符串转换为整数

来自分类Dev

如何在Powershell中将数组绑定到HTML标签?

来自分类Dev

如何在Powershell中将几乎相同的对象分组?

来自分类Dev

如何在Powershell中将Ctrl + /分配为KeyGesture

来自分类Dev

如何在PowerShell脚本中将参数传递给命令?

来自分类Dev

如何在powershell中将文本表转换为HTML表

Related 相关文章

  1. 1

    如何在PowerShell中将数据导出到CSV?

  2. 2

    如何在PowerShell中将数据导出到CSV?

  3. 3

    如何在powershell中将数组导出到csv?

  4. 4

    如何在PowerShell中将DateTime作为参数传递?

  5. 5

    您如何在Powershell中将变量嵌入HTML?

  6. 6

    如何在Powershell中将布尔结果放入变量中?

  7. 7

    如何在PowerShell中显示当前目录?

  8. 8

    如何在RabbitMQ中将消息导入和导出到队列

  9. 9

    如何正确导出和导入也具有子目录作为挂载点的NFS共享?

  10. 10

    如何正确导出和导入也具有子目录作为挂载点的NFS共享?

  11. 11

    如何在powershell中导入csv替换字符并导出保存在blob中的csv

  12. 12

    如何在Powershell v5模块中导出类

  13. 13

    如何在 Powershell 中格式化模式文本导出

  14. 14

    Powershell - 如何在导入 csv 时忽略双行

  15. 15

    如何在当前Powershell目录中启动WSL终端?

  16. 16

    如何在Powershell脚本中授予目录权限

  17. 17

    如何在Powershell中仅删除或记录顶级目录?

  18. 18

    如何在Powershell中列出目录中的所有项目

  19. 19

    如何在Powershell中将Ctrl + /分配为KeyGesture

  20. 20

    如何在PowerShell中将命名参数定义为[ref]

  21. 21

    如何在PowerShell中将SID转换为帐户名?

  22. 22

    如何在Powershell中将参数传递给批处理

  23. 23

    如何在Powershell中将“成员”管道传输到csv

  24. 24

    如何在PowerShell中将字符串转换为整数

  25. 25

    如何在Powershell中将数组绑定到HTML标签?

  26. 26

    如何在Powershell中将几乎相同的对象分组?

  27. 27

    如何在Powershell中将Ctrl + /分配为KeyGesture

  28. 28

    如何在PowerShell脚本中将参数传递给命令?

  29. 29

    如何在powershell中将文本表转换为HTML表

热门标签

归档