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

Kod bat, przerobienie kodu

+1 głos
486 wizyt
pytanie zadane 11 marca 2022 w Inne języki przez artix132 Użytkownik (870 p.)
edycja 11 marca 2022 przez artix132

#bat #cmd

Mam 10komputerów i w każdym po 2 dyski, które mnie interesują. Na każdym dysku są foldery o nazwach 20220311, 20220310, 20220309 itd. jest też kilka folderów o innych nazwach, ale nie interesują mnie. Chcę połączyć się zdalnie z każdym z nim i odczytać pojemność dysku oraz najstarszy i najnowszy plik, który ma w nazwie datę. Mam plik txt z adresami ip.

Wypisze mi wszystkie pliki na dyskach D i E:

for /F "tokens=1,2" %%v IN (C:\User\...AdresyIp.txt) DO (
dir /od \\%%v\D$ >> C:\User\...Raport.txt
dir /od \\%%v\E$ >> C:\User\...Raport.txt
)

Wypisze mi najnowszy i najstarszy plik, ale razem z innymi folderami, interesują mnie tylko te których nazwa zaczyna się na "202..."

FOR /F "delims=" %%j IN (`dir /b /ad-h /t:a /od \\konkretne_ip\D$`) DO SET a=%%j
echo: najnowszy folder: %a%
FOR /F "delims=" %%k IN (`dir /b /ad-h /t:a /o-d \\konkretne_ip\E$`) DO SET b=%%k
echo: najnowszy folder: %b%

Pytanie:
1) jak połączyć te 2 kody?
2) jak dodać filtr na nazwę, żeby innych folderów nie brało pod uwagę?


Myślałem o czymś takim, ale nie chce działać:

@echo off
for /F "tokens=1,2" %%v IN (C:\User\...AdresyIp.txt) 
DO (
     FOR /F "delims=" %%j IN (`dir /b /ad-h /t:a /od \\%%v\D$`) DO SET a=%%j
     echo: najnowszy folder: %a%
     FOR /F "delims=" %%k IN (`dir /b /ad-h /t:a /o-d \\%%v\E$`) DO SET b=%%k
     echo: najnowszy folder: %b%
)
pause
ends

 

komentarz 12 marca 2022 przez VBService Ekspert (256,600 p.)
A nie ułatwiło by Tobie zmapowanie tych dysków na tym komputerze, gdzie ma działać skrypt i operowanie na tych dyskach?

1 odpowiedź

+1 głos
odpowiedź 11 marca 2022 przez AnimaVillis Stary wyjadacz (13,630 p.)

Napiszę Ci jak krok po kroku musisz to zrobić, naskrobałeś sobie sam część kodu to dasz radę!

  1. Połączenie z hostem + sprawdzenie czy połączenie jest
  2. Sprawdzenie danych związanych z wielkością dysków.
  3. Listowanie katalogów przy użyciu grep.
  4. Wypisanie danych folderów

Zadam pytanie prostsze dlaczego nie python albo powershell?

komentarz 12 marca 2022 przez VBService Ekspert (256,600 p.)
edycja 12 marca 2022 przez VBService

 @artix132;

Zadam pytanie prostsze dlaczego nie python albo powershell?

albo nawet vbscript?  wink

 

P.S  przejście na jakiś język skryptowy (interpretowany), ma m. in. taką zaletę, że można zrobić kolekcję z "przefiltrowanych" nazw dysków i za pomocą jednej pętli przeglądać tę kolekcję i w "ciekawszy" (bardziej czytelny, z większą ilością detali w opisie itp.) sposób prezentować dane wynikowe. - IMHO  smiley

Podobne pytania

0 głosów
2 odpowiedzi 449 wizyt
pytanie zadane 15 kwietnia 2024 w Inne języki przez sensor Użytkownik (680 p.)
0 głosów
3 odpowiedzi 1,087 wizyt
pytanie zadane 15 kwietnia 2024 w Inne języki przez sensor Użytkownik (680 p.)
0 głosów
1 odpowiedź 907 wizyt
pytanie zadane 28 stycznia 2023 w Inne języki przez tubylec01 Obywatel (1,610 p.)

93,629 zapytań

142,551 odpowiedzi

323,052 komentarzy

63,134 pasjonatów

Advent of Code 2025

Top 15 użytkowników

  1. 1936p. - dia-Chann
  2. 1916p. - DziarnowskiJ
  3. 1886p. - Łukasz Piwowar
  4. 1868p. - CC PL
  5. 1842p. - Maurycy W
  6. 1841p. - raydeal
  7. 1840p. - Adrian Wieprzkowicz
  8. 1782p. - rucin93
  9. 1701p. - rafalszastok
  10. 1588p. - Tomasz Bielak
  11. 1521p. - Michal Drewniak
  12. 1491p. - Rafał Trójniak
  13. 1444p. - robwarsz
  14. 1257p. - ssynowiec
  15. 1208p. - Mariusz Fornal
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

Kursy INF.02 i INF.03
...