• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

jak to zrobić żeby folder miał datę w nazwię, która będzie się zmieniać z każdym dniem??

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
478 wizyt
pytanie zadane 17 lutego 2023 w Systemy operacyjne, programy przez Ad19am94 Początkujący (440 p.)
Próbowałem tworzyć folder przy pomocy plików bat, ale powstawało kilka folderów zamiast jednego i nie zmieniały daty w nazwie. Ma ktoś pomysł jak stworzyć lub ustawić na Windows folder, żeby miał w nazwie „nazwę datę” a data się zmieniała?
komentarz 17 lutego 2023 przez reaktywny Nałogowiec (44,710 p.)
Windows, ani żaden system nie posiada takiej funkcjonalności :) Możesz przybliżyć temat, do czego to jest potrzebne?

Chcesz mieć coś w rodzaju:

"Mój folder z plikami z dnia 17-02-2023" ?

Data sama się nie będzie zmieniała, musisz to w jakimś skrypcie zapewnić.
komentarz 17 lutego 2023 przez Ad19am94 Początkujący (440 p.)
w jakim skrypcie?
komentarz 17 lutego 2023 przez reaktywny Nałogowiec (44,710 p.)
Miałem na myśli własnoręcznie napisany, w windowsie to jakiś .BAT lub .CMD. Albo w języku skryptowym: Python, Ruby, PHP, JS,.... Tak będzie najprościej.
komentarz 17 lutego 2023 przez Ad19am94 Początkujący (440 p.)
Jak ja mam folder na dysku o nazwie „gra” to jak w bat lub konsoli cmd napisać żeby folder „gra” miał dopisaną datę i zmieniał ją po zmianie daty w systemie np „gra 17-02-2023” dla dnia  dzisiejszego.
komentarz 17 lutego 2023 przez reaktywny Nałogowiec (44,710 p.)

Do zmiany nazwy katalogu / pliku używasz polecenia ren.

Tu w odpowiedzi masz jak otrzymać w skrypcie datę systemową:

https://superuser.com/questions/951942/getting-date-in-a-batch-file

Tu jest konkatenacja zmiennych / stringów:

https://stackoverflow.com/questions/2027070/how-to-concatenate-strings-in-a-windows-batch-file

komentarz 17 lutego 2023 przez Ad19am94 Początkujący (440 p.)

napisałem coś takiego:

$oldfile = "gra w kulki " + (get-date (get-date).addDays(-1) -UFormat "%m-%d-%Y")
$newfile = "gra w kulki " + (get-date -UFormat "%m-%d-%Y")
cd 'D:\moje programy\robocze'
Rename-Item -Path $oldfile -NewName $newfile

w powershell znajdę jeszcze sposób żeby odpalało się co 24 godziny i gotowe.

1
komentarz 17 lutego 2023 przez reaktywny Nałogowiec (44,710 p.)

@Ad19am94, Skrypt OK, ale będzie działał prawidłowo tylko wtedy gdy go odpalisz we właściwym czasie :)

1
komentarz 17 lutego 2023 przez j23 Mędrzec (195,260 p.)

@Ad19am94, użyj harmonogramu zadań.

1 odpowiedź

+1 głos
odpowiedź 18 lutego 2023 przez VBService Ekspert (256,320 p.)
edycja 18 lutego 2023 przez VBService
$oldfile = "gra w kulki " + (get-date (get-date).addDays(-1) -UFormat "%m-%d-%Y")
$newfile = "gra w kulki " + (get-date -UFormat "%m-%d-%Y")
cd 'D:\moje programy\robocze'
Rename-Item -Path $oldfile -NewName $newfile

proponuję bardziej uniwersalny zapis, ponieważ Twój skrypt sprawdza tylko jeden dzień wstecz datę.

 

@reaktywny

 

@Ad19am94, Skrypt OK, ale będzie działał prawidłowo tylko wtedy gdy go odpalisz we właściwym czasie :)

Co się stanie jak włączysz komputer w dłuższym odstępie czasu, niż jeden dzień?


$folderNamePrefix = "gra w kulki"
$pathToWorkingFolder = "D:\moje programy\robocze"
$date = Get-Date -UFormat "%m-%d-%Y"

$folder = Get-ChildItem -Path $pathToWorkingFolder -Directory | Where-Object {$_.Name -like "$folderNamePrefix*"}
$newName = $folderNamePrefix + " " + $date
$newFullName = Join-Path -Path $pathToWorkingFolder -ChildPath $newName

if ($folder)
{
    if (-not(Test-Path -Path $newFullName -PathType Container))
    {
        Rename-Item $folder.FullName $newName
        Write-Host "Zmieniono nazwe folderu na: $newName"
    }
    else
    {
        Write-Host "Folder o nazwie: $newName juz istnieje"
    }
}
else
{
    Write-Host "Nie znaleziono folderu o nazwie '$newName'"
    Write-Host "Folder zostanie utworzony"
    New-Item -ItemType Directory -Path $newFullName
}

# Read-Host "Nacisnij dowolny klawisz, aby kontynuowac..."

 

 

BTW, 

@j23

 

@Ad19am94, użyj harmonogramu zadań.

np. Automate Powershell Scripts With Task Scheduler

1
komentarz 18 lutego 2023 przez reaktywny Nałogowiec (44,710 p.)
Właśnie o tym pisałem. Ładny skrypt.

Podobne pytania

0 głosów
0 odpowiedzi 117 wizyt
pytanie zadane 26 marca 2020 w Systemy operacyjne, programy przez Shensu Nowicjusz (120 p.)
0 głosów
1 odpowiedź 711 wizyt
pytanie zadane 13 maja 2018 w Systemy operacyjne, programy przez Emil Panecki Bywalec (2,100 p.)

93,172 zapytań

142,184 odpowiedzi

321,965 komentarzy

62,496 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 918p. - dia-Chann
  2. 902p. - Łukasz Piwowar
  3. 901p. - CC PL
  4. 894p. - Łukasz Eckert
  5. 872p. - Michal Drewniak
  6. 867p. - Marcin Putra
  7. 858p. - rafalszastok
  8. 856p. - rucin93
  9. 842p. - Dawid128
  10. 840p. - Adrian Wieprzkowicz
  11. 830p. - Piotr Aleksandrowicz
  12. 826p. - Michał Telesz
  13. 819p. - Mariusz Fornal
  14. 814p. - Mikbac
  15. 812p. - TheLukaszNs
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...