Ik probeer een back-up te maken van een lijst en krijg de foutmelding

Export-SPWeb: kan geen SPWeb-object vinden met Id of Url

. Ik vermoed dat dit gerelateerd is aan de spatie in de lijstnaam. Ik heb dit commando op een miljoen verschillende manieren geprobeerd, dus wat is de beste manier om dit te doen? Ik heb gelezen over de dubbele aanhalingstekens, maar kan het niet laten werken.

Export-SPWeb -Identity https://servername/path -Path C: \ backup.cmp -ItemUrl “/ Lists / Mortgage Referrals”

Reacties

  • ik weet het zeker je hebt toegang tot de centrale admin, probeer te exporteren vanuit de centrale admin.
  • Ik ' gok omdat je -ItemUrl niet ' t geldig. Export-SPWeb -ItemUrl states " Specificeert de URL van de webtoepassing, GUID of het te exporteren object. Het type moet een geldige URL zijn; bijvoorbeeld servernaam . "

Antwoord

Je commando zou er als volgt uit moeten zien

Export-SPWeb -Identity https://servername/path -Path C:\backup.cmp -ItemUrl "Lists/Mortgage Referrals" 
  • in identiteit volledige URL van siteverzameling .
  • bij ItemURL mag u “/” niet gebruiken als het zich in de root van de siteverzameling bevindt.

Reacties

  • Dat was het! Na de -ItemUrl had ik: " / lists / etc " in plaats van jouw " lijsten / etc ". Kan ' niet geloven dat ik het heb gemist. Bedankt!
  • ik weet het zeker, je zult het antwoord ook als antwoord markeren en stemmen. 🙂
  • Weet je zeker dat het / indien niet bij de root van de siteverzameling? Ik dacht dat ItemUrl web-relatief was (ik zou het goed mis kunnen hebben)
  • @JamesLove Ik citeer Brian van het MS PFE-team (link is daarboven in mijn antwoord): eigenlijk onder de dekens zal de Export-SPWeb cmdlet SPWeb.GetList () aanroepen, maar voordat die functie wordt aangeroepen, zal het de SPWeb.ServerRelativeUrl en een extra “/” plaatsen als de string in ItemUrl geen voorloop heeft ” / ”. Kortom, om veilig te zijn als u de parameter ItemUrl altijd instelt op de relatieve URL van de server en vervolgens het pad naar de lijst, zou het altijd moeten werken, ongeacht de weblocatie.

Answer

Algemene syntaxis is deze:

Export-SPWeb -Identity "http://site" -Path D:\list.cmp -ItemUrl "/Lists/{ListUrl}" 

Maar wat je moet invoeren {List} deel van -ItemUrl argument is een URL, geen lijsttitel . Om het te vinden, kijkt u naar de URL van een weergave van uw lijst, “Hypotheekverwijzingen”. Het ziet eruit als http://site/Lists/{ListUrl}/view.aspx. Dat is het. Kopieer dat deel naar Export-SPWeb.

Haal het op in powershell:

($w.Lists["Mortgage Referrals"].DefaultViewUrl -split "/")[2] # this will return {ListUrl} part 

Gecombineerde two-liner ziet er dus als volgt uit:

$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 

Update: oh, nog één ding hier. Export-SPWeb verschilt wanneer uitgevoerd op root-sites en niet-root-sites. Kijk eens naar http://blogs.msdn.com/b/briangre/archive/2014/03/18/export-spweb-syntax-changes-between-root-site-and-sub-sites.aspx

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *