Kategorie szkoleń | Egzaminy | Kontakt
  • 1
  • 0
  • 47

Witam.

Potrzebuję pomocy w napisaniu skryptu, który wyświetli rozmiar katalogu "Dane" znajdującego się dysku "D"
ze wszystkich komputerów w sieci lokalnej, listę komputerów chcę importować z pliku txt. 
Skrypt, który mam nie pobiera listy komputerów z pliku i działa tylko z wpisaną na sztywno nazwą.

$startFolder = "\\komputer1\d$\dane"

$colItems = (Get-ChildItem $startFolder | Measure-Object -property length -sum)
"$startFolder -- " + "{0:N2}" -f ($colItems.sum / 1MB) + " MB"

$colItems = (Get-ChildItem $startFolder -recurse | Where-Object {$_.PSIsContainer -eq $True} | Sort-Object)
foreach ($i in $colItems)
{
$subFolderItems = (Get-ChildItem $i.FullName | Measure-Object -property length -sum)
$i.FullName + " -- " + "{0:N2}" -f ($subFolderItems.sum / 1MB) + " MB"
}

Jak go zmodyfikować, żeby zamiast "komputer1" pobierał listę komputerów z pliku?

Rafał_Radzki
  • Zapytał
  • @ Rafał_Radzki | 07.11.2016
    • 2
    • 0
    • 1

Odpowiedź (1)

  • 0

Można to zrobić za pomocą instrukcji foreach oraz cmdletu get-content:

 $computers = Get-Content .\computers.txt
 $computers
foreach ($c in $computers) 
{
 $startFolder = "\\$c\d$\dane"  
$startFolder 

# pozostała część skryptu 
}

 

  • Odpowiedział
  • @ | 08.11.2016
  • TRENER ALTKOM AKADEMII