Skrypt w cmd [powershell]

0

Witam,

Mam oto taki problem, chciałbym, aby mój skrypt dodawał atrybuty katalogom. Chodzi o to, że przy podaniu katalogu nie sprawdza czy ten katalog jest tylko go tworzy od razu (i z tymi atrybutami bywa też różnie nwm gdzie błąd).

Mógłby ktoś nanieś poprawki, by to miało ręce i nogi ?

@echo off
 
setlocal enabledelayedexpansion
 
:poczatek
 
echo lista
 
echo 1- atrybut pliku do odczytu
 
echo 2- atrybut pliku archiwalnego
 
echo 3- atrybut pliku systemowego
 
echo -4 atrybut pliku ukrytego
 
 
 
set /p plik=podaj katalog do utworzenia (Enter, jesli chcesz zmienic atrybut innemu katalogowi)
 
set /p plik=lub podaj istniejacy katalog (omin, jesli utworzyłes nowy)
 
set /p wybor=podaj atrybut jaki mam nadac
 
 
 
if [NOT] EXIST %plik% ELSE md %plik%
 
 
 
if %wybor%==1 goto case_1
 
if %wybor%==2 goto case_2
 
if %wybor%==3 goto case_3
 
if %wybor%==4 goto case_4
 
goto default
 
 
 
:case_1
 
attrib +r C:\Users\Admin\Desktop\Zadanie\%plik% /d /s
 
:case_2
 
attrib +a C:\Users\Admin\Desktop\Zadanie\%plik% /d /s
 
:case_3
 
attrib +s C:\Users\Admin\Desktop\Zadanie\%plik% /d /s
 
:case_4
 
attrib +h C:\Users\Admin\Desktop\Zadanie\%plik% /d /s
 
 
 
goto :EOF
0

Cześć :)

  1. Do debugowania używaj sobie np. PowerShell ISE (wbudowany w Win10), albo skonfiguruj sobie narzędzie Visual Studio Code z dodatkami powłoki PowerShella. Polecam tę drugą opcję, bo VSC jest darmowe, a ma duże możliwości we przeróżnych zastosowaniach.

  2. Staraj się nie używać języka polskiego w skryptach. W ogóle w kodzie.

  3. Tak w ogóle to rozbijaj sobie zawsze problem na mniejsze kroki. Np. w Twoim przypadku dobrze by było zrobić to na przykład tak:

  1. Jak ustawić parametr dla katalogu.
  2. Jak sprawdzić, czy katalog istnieje? Jeżeli istnieje, to jak wykonać na nim daną akcje?
  3. Jak wyciągnąć nazwy katalogów do zmiennej?
  4. Jak spiąć to w mini program (chodzi o to, że chcesz wyświetlać na ekranie te pytania w stylu " podaj atrybut jaki mam nadac "
  1. Jak rozpiszesz sobie taki mini algorytm, zerknij np. tutaj i tutaj - te linki Ci częściowo pomogą. :)

  2. Spróbuj rozwiązać problem samodzielnie. W zasadzie musisz zmienić tylko końcówkę, kluczowy jest fragment:
    if [NOT] EXIST %plik% ELSE md %plik%

Powodzenia!:)

Jak będziesz nadal miał problemy, to pomożemy. :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1