Toon posts:

PowerShell - Zoeken en verplaatsen van files in folders

Pagina: 1
Acties:

Acties:
  • +1Henk 'm!

  • Killah_Priest
  • Registratie: Augustus 2001
  • Laatst online: 23:43
Brahiewahiewa schreef op zaterdag 20 maart 2021 @ 12:51:
[...]

Niet zo vreemd. Je wijst nu de commando's die zouden moeten loggen en de file zouden moeten verplaatsen, toe aan een string variabele. Maar ze worden nergens uitgevoerd
Dit is dus niet waar, hij kent de eventuele output van Move-Item toe aan een variable.

Verder ontopic: heb je je script al eens debugged? Of regel voor regel uitgevoerd (in ieder geval tot de regel voordat je de loop start) en gekeken welke waardes je variables hebben? Ik zie ook bv een Write-Host in je foreach loop, geeft deze wel output?

Oja, in je call naar Move-Object bij de Path parameter: wat als je de "fullname" property van $folder meegeeft?

(Ik heb geen zin om de gehele code echt intensief na te lopen, maar bovenstaande dingen zijn sowieso wel de minimale zaken om te controleren)

Acties:
  • +2Henk 'm!

  • downtime
  • Registratie: Januari 2000
  • Niet online

downtime

Everybody lies

jenpet schreef op maandag 22 maart 2021 @ 23:51:
[...]


ja heb regel voor regel gedebugged alleen hij laat geen errror niks zien , klinkt heel makkelijk maar zo is niet bedoeld ja mijn write host output ook de filenames die hij zoekt maar hij doet er verder niks mee...

en heb ook scripts van internet geplukt ... twijfel bijna of het aan mijn powershell ligt..
Ik snap jouw script niet. Je zegt dat je files zoekt, maar je zoekt geen files. Je zoekt directories: $_.psiscontainer -eq $true

Als je files zoekt dan is dit logischer:

$folders = Get-ChildItem $old_document_share -Recurse -File | Where-Object { $_.name.Contains($account_name) }

Daarnaast is .Contains volgens mij ook case sensitive. Dat is in Powershell vaak niet wat je wilt als je met files werkt.

  • Killah_Priest
  • Registratie: Augustus 2001
  • Laatst online: 23:43
downtime schreef op dinsdag 23 maart 2021 @ 17:00:
[...]

Ik snap jouw script niet. Je zegt dat je files zoekt, maar je zoekt geen files. Je zoekt directories: $_.psiscontainer -eq $true

Als je files zoekt dan is dit logischer:

$folders = Get-ChildItem $old_document_share -Recurse -File | Where-Object { $_.name.Contains($account_name) }

Daarnaast is .Contains volgens mij ook case sensitive. Dat is in Powershell vaak niet wat je wilt als je met files werkt.
Plus dat "contains" gebruikt wordt om een exacte match binnen een collection te vinden ipv like waarmee op partial strings gezocht lan worden.

  • downtime
  • Registratie: Januari 2000
  • Niet online

downtime

Everybody lies

Killah_Priest schreef op woensdag 24 maart 2021 @ 12:49:
[...]


Plus dat "contains" gebruikt wordt om een exacte match binnen een collection te vinden ipv like waarmee op partial strings gezocht lan worden.
Dat dacht ik eerst ook toen ik Contains zag. Maar de .NET method Contains doet wat anders dan de Powershell operator -Contains. Raar maar waar.

https://docs.microsoft.co...ing.contains?view=net-5.0
Pagina: 1


Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee