我可以查询IIS并获取当前的物理路径: $ sitepath = get-website xyz.net | select-object PhysicalPath 但随后需要在此子目录中找到一个文件并删除/创建/重命名。我遇到的麻烦是我看到错误“无法找到驱动器。名称为'{{{$ = physicalPath = d'的驱动器不存在。”对于任何cmdlet我尝试应用于$ sitepath。 非常感谢,
答案 0 :(得分:0)
首先需要从路径中获取fileinfo或directoryinfo项。
只要PhysicalPath doest包含环境变量(如%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中确实包含系统变量,请通过展开变量将变量扩展为完整路径:Expand Environmental Variables in PowerShell Strings,然后使用上述方法获取对文件对象的引用。