Estoy intentando hacer una copia de seguridad de una lista y obtengo el error
Export-SPWeb: No se puede encontrar un objeto SPWeb con Id o Url
. Supongo que esto está relacionado con el espacio en el nombre de la lista. He probado este comando de un millón de formas diferentes, entonces, ¿cuál es la mejor forma de hacer esto? He leído acerca de las comillas dobles, pero no puedo hacer que funcione.
Export-SPWeb -Identity https://servername/path -Path C: \ backup.cmp -ItemUrl «/ Lists / Mortgage Referrals»
Comentarios
- estoy seguro tiene acceso al administrador central, intente exportar desde el administrador central
- Yo ' supongo que su -ItemUrl no es ' t válido. Export-SPWeb -ItemUrl indica " Especifica la URL de la aplicación web, GUID u objeto que se va a exportar. El tipo debe ser una URL válida; por ejemplo, nombre_servidor . "
Responder
Su comando debe verse así
Export-SPWeb -Identity https://servername/path -Path C:\backup.cmp -ItemUrl "Lists/Mortgage Referrals"
- en la URL completa de identidad de la colección del sitio .
- en ItemURL no debe usar «/» si está en la raíz de la colección de sitios.
Comentarios
- ¡Eso fue todo! Después de -ItemUrl tenía: " / lists / etc " en lugar de su " listas / etc ". No puedo ' creer que me lo perdí. ¡Gracias!
- Estoy seguro de que lo marcará como respuesta n votar a favor también. 🙂
- ¿Está seguro de que necesita
/
si no está en la raíz de la colección de sitios? Pensé queItemUrl
era relativo a la web (podría estar muy equivocado) - @JamesLove Citando a Brian del equipo MS PFE (el enlace está arriba en mi respuesta): básicamente debajo de las cubiertas, el cmdlet Export-SPWeb llamará a SPWeb.GetList (), pero antes de llamar a esa función, antepondrá SPWeb.ServerRelativeUrl y un «/» adicional si la cadena en ItemUrl no tiene un » / ”. En resumen, para estar seguro, si siempre establece el parámetro ItemUrl en la URL relativa del servidor y luego en la ruta a la lista, siempre debería funcionar independientemente de la ubicación web
Respuesta
La sintaxis general es la siguiente:
Export-SPWeb -Identity "http://site" -Path D:\list.cmp -ItemUrl "/Lists/{ListUrl}"
Pero lo que necesitas incluir {List}
parte del argumento -ItemUrl
es una URL, no un título de lista . Para encontrarlo, consulte la URL de cualquier vista de su lista, «Referencias hipotecarias». Parece http://site/Lists/{ListUrl}/view.aspx
. Eso es todo. Copia esa parte en Export-SPWeb
.
Consíguela en powershell:
($w.Lists["Mortgage Referrals"].DefaultViewUrl -split "/")[2] # this will return {ListUrl} part
Entonces, la combinación de dos líneas se ve así:
$itemUrl = (((Get-SPWeb "http://site").Lists["Mortgage Referrals"].DefaultViewUrl -split "/") | select -first 3) -join "/" Export-SPWeb -Identity "http://site" -Path D:\list.cmp -ItemUrl $itemUrl
Actualización: oh, solo una cosa más aquí. Export-SPWeb
difiere cuando se ejecuta en sitios raíz y en sitios que no lo son. Eche un vistazo a http://blogs.msdn.com/b/briangre/archive/2014/03/18/export-spweb-syntax-changes-between-root-site-and-sub-sites.aspx