Kezdőoldal » Számítástechnika » Programozás » Powershell-ben hogy lehet az...

Powershell-ben hogy lehet az alábbiakat megcsinálni?

Figyelt kérdés

Ez most a script.

PS E:\teszt> Get-ChildItem e:\elohivasra -recurse | Where-Object { !$_.PSIsContainer -and $_.LastWriteTime -lt '2013.05.

01' } | copy-item -destination 'e:\tmp\1\' -force

1, Hiába van ott a -force nem hozza létre az 1-es alkönyvtárat a tmp-ben. Mit kell tennem,hogy létrehozza?

2, A copy-item-ben hogy tudok az eredmény objektumokra hivatkozni?

Így jó lenne? : copy-item -destination e:\tmp\$_.LastWriteTime\


2017. febr. 2. 19:02
 1/2 anonim ***** válasza:

Sajnos a Copy-Item vmdlet bután működik.

A rekurzív mappalétrehozást csak akkor csinálja, amikor mind a forrás, mind a cél egy mappa. Ha az adott objektum viszont egy fájl, akkor elvárja, hogy a path létre legyen hozva, hogy neki csak bele kelljen írnia a célfájlt.


Viszont át tudod verni! A megoldás az, hogy amikor beadod a Copy-Itemnek a destination infót, ne egy stringet adj neki, hanem hajtass végre vele egy New-Item parancsot, ami létrehozza a mappát és egy ideiglenes fájlt, amit majd felülírunk. A New-Item visszatérési objektumát a Copy-Item tudja értelmezni, és a kívánt fájlt a célhelyre:


Copy-Item -destination (new-item -type file -path ("E:\tmp\1\" + $_) -force) -force

2017. febr. 20. 12:10
Hasznos számodra ez a válasz?
 2/2 A kérdező kommentje:
hmm. Köszi, de már megoldottam máshogy, bár nem tudom melyik a jobb. Jelenleg ellenőriztetem a mappát és ha nem létezik,akkor létrehozza. Valószínű a feltétel miatt lassabb..
2017. febr. 20. 12:38

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!