ChatGPT zaproponował taki skrypt, jak będę miał dostęp do apartow to go przetestuję.
Myślicie że wszystko jest tutaj ok czy coś wymaga poprawy?
Jeszcze raz dziękuję za zainstalowanie 😉
# Ustawienia
$destinationPath = "C:\Users\TwojaNazwaUżytkownika\Pictures\ImportowaneZdjęcia" # Ścieżka docelowa
# Znajdź dysk z kartą SD
$sdCard = Get-WmiObject Win32_DiskDrive | Where-Object { $_.MediaType -eq "Removable Media" }
if ($sdCard) {
\# Uzyskaj literę dysku<br />
$sdCardLetter = \(Get\-WmiObject Win32\_LogicalDisk | Where\-Object \{ $\_\.DeviceID \-eq $sdCard\.DeviceID \}\)\.DeviceID<br />
\# Pobierz wszystkie pliki zdjęć z karty SD<br />
$images = Get\-ChildItem \-Path "$sdCardLetter\\\*" \-Include \*\.jpg, \*\.jpeg, \*\.png \-Recurse<br />
foreach \($image in $images\) \{<br />
\# Odczytaj datę utworzenia zdjęcia<br />
$creationDate = \(Get\-Item $image\.FullName\)\.CreationTime<br />
\# Ustal nazwę folderu na podstawie daty<br />
$dateFolder = $creationDate\.ToString\("yyyy\-MM\-dd"\)<br />
$finalDestinationPath = Join\-Path \-Path $destinationPath \-ChildPath $dateFolder<br />
\# Utwórz folder docelowy, jeśli nie istnieje<br />
if \(\-not \(Test\-Path \-Path $finalDestinationPath\)\) \{<br />
New\-Item \-ItemType Directory \-Path $finalDestinationPath<br />
\}<br />
\# Ustal nową nazwę pliku, aby uniknąć nadpisywania<br />
$newFileName = "\{0\}\_\{1:yyyy\-MM\-dd\_HH\-mm\-ss\}\{2\}" \-f $image\.BaseName, $creationDate, $image\.Extension<br />
$newFilePath = Join\-Path \-Path $finalDestinationPath \-ChildPath $newFileName<br />
\# Skopiuj zdjęcie do odpowiedniego folderu z nową nazwą<br />
Copy\-Item \-Path $image\.FullName \-Destination $newFilePath \-Force<br />
\}<br />
Write\-Host "Zdjęcia zostały zaimportowane do: $destinationPath"<br />
} else {
Write\-Host "Nie znaleziono karty SD\."<br />
}