0

我可以查询 IIS 并获取当前的物理路径: $sitepath = get-website xyz.net | select-object PhysicalPath 但随后需要在其子目录中找到一个文件并删除/创建/重命名。我遇到的问题是我看到错误“找不到驱动器。名称为 '@{physicalPath=d' 的驱动器不存在。” 对于我尝试应用于 $sitepath 的任何 cmdlet。非常感谢,

4

1 回答 1

0

您需要首先从路径中获取文件信息或目录信息项。

只要 PhysicalPath 不包含环境变量(如 %SystemDrive%\inetpub\wwwroot),这将起作用:

$SiteFolder = get-item (get-website xyz.net).physicalpath
$fileInFolder="$($SiteFolder.fullname)\index.html")
$fileInFolder | gm;
$newFileHandle = $fileInFolder.Copy("C:\New\Path\Of\copiedFile")
$fileInFolder.Move("newfilename.htm"); 
$fileInFolder.Move("c:\new\Path\Of\File")
$FileInFolder.Delete()
$fileinFolder | Remove-Item

如果 PhysicalPath 中确实包含系统变量,请通过展开将变量展开为完整路径:展开 PowerShell 字符串中的环境变量,然后使用上述方法获取对文件对象的引用。

于 2013-10-31T18:25:44.860 回答