PowerShell - 使用资源管理器输入控制台

时间:2014-11-11 16:17:53

标签: powershell

场景:用户正在尝试从PowerShell 3.0脚本上载文档。
当前机制:读取主机。请求path / file.ext的简单字符串提示符。
所需行为:提示('请选择要上传的文件')和 资源管理器已启动用户选择的路径/文件将传递给我的脚本。

我当然可以看到如何启动资源管理器,只是无法确定如何绑定命令行 提示和资源管理器一起选择文件。

亲切的问候,

1 个答案:

答案 0 :(得分:0)

这是一个简单的脚本,可以执行您想要执行的操作。您还可以使用PowerGUI编译脚本并关闭Powershell窗口自动关闭powershell窗口,但不需要。

$DestinationFolder = "L:\Users\caleb.berger\Desktop";

function Get-FileName($initialDirectory) {  
[System.Reflection.Assembly]::LoadWithPartialName("System.windows.forms") |     Out-Null

$OpenFileDialog = New-Object System.Windows.Forms.OpenFileDialog;
$OpenFileDialog.initialDirectory = $initialDirectory;
$OpenFileDialog.filter = "All files (*.*)| *.*";
$OpenFileDialog.ShowDialog() | Out-Null;
$OpenFileDialog.filename;
}

Write-Host "Please Select The File To Upload:";
$SourceFile = Get-FileName -initialDirectory "c:\";

Write-Host "Copying File...";
Copy-Item -LiteralPath $SourceFile -Destination $DestinationFolder -Force;
Write-Host "Finished.";
Read-Host "Press Any Key To Continue";

您可以详细了解其工作原理: http://blogs.technet.com/b/heyscriptingguy/archive/2009/09/01/hey-scripting-guy-september-1.aspx

他的脚本是我构建此应用程序的。