atarionline.pl Skrypt pod cmd - Forum Atarum

Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.

  • :
  • :

Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.

    • 1:
       
      CommentAuthorDracon
    • CommentTime30 May 2019 zmieniony
     
    Czołem, czy są tu jacyś programiści z wyższych plaftorm? ;)
    Potrzebuję wykonać takie coś:
    Utwórz plik wsadowy mkdir1.bat, który będzie tworzył w bieżącym katalogu trzy katalogi o
    nazwach podanych jako parametry wiersza poleceń.
    Wskazówka Użyj poleceń takich jak md %1

    ... ale nie wiem jak to zrobić - chodzi o zwięzły ale zrozumiały kod w postaci pliku wsadowego dla powłoki cmd i/lub DOS.
    Ktoś pomógłby? ;o
    • 2:
       
      CommentAuthorjhusak
    • CommentTime30 May 2019
     
    W Bashu byłoby to tak: (możesz zainstalować środowisko mingw)

    for i in "$@": do mkdir "$i"; done

    lub

    while "$1": do mkdir "$1"; shift; done
    • 3:
       
      CommentAuthorDracon
    • CommentTime30 May 2019
     
    Super, dzięki za szybką odpowiedź! :)
    Tylko jak to przełożyć na pecetowe klimaty DOS/CMD?
  1.  
    Proszę bardzo:

    mkdir %1
    mkdir %2
    mkdir %3
  2.  
    Sposób użycia:

    c:\dupa>dir
    Volume in drive C has no label.
    Volume Serial Number is B442-80A2

    Directory of c:\dupa

    30.05.2019 13:42 <DIR> .
    30.05.2019 13:42 <DIR> ..
    30.05.2019 13:42 28 mkdir1.bat
    1 File(s) 28 bytes
    2 Dir(s) 157 911 666 688 bytes free

    c:\dupa>mkdir1.bat bolec stolec kolec

    c:\dupa>mkdir bolec

    c:\dupa>mkdir stolec

    c:\dupa>mkdir kolec

    c:\dupa>dir
    Volume in drive C has no label.
    Volume Serial Number is B442-80A2

    Directory of c:\dupa

    30.05.2019 13:42 <DIR> .
    30.05.2019 13:42 <DIR> ..
    30.05.2019 13:42 <DIR> bolec
    30.05.2019 13:42 <DIR> kolec
    30.05.2019 13:42 28 mkdir1.bat
    30.05.2019 13:42 <DIR> stolec
    1 File(s) 28 bytes
    5 Dir(s) 157 911 339 008 bytes free

    c:\dupa>
    • 6: CommentAuthorpin
    • CommentTime30 May 2019
     
    Miałem właśnie odesłać do mauala spartados x ;)
    • 7: CommentAuthorpin
    • CommentTime30 May 2019
     
    Można dodać echo off, będzie mniej wulgarnie ;)
    • 8: CommentAuthormono
    • CommentTime30 May 2019 zmieniony
     
    Piszesz maturę z informatyki? :>

    Nie pamiętam dobrze, jak to było w łindołsie, ale pewnie coś około tego:

    copy con mkdir1.bat
    md %1
    md %2
    md %3

    tu wciskasz ctrl+z.

    W dosie działało :)
    • 9:
       
      CommentAuthorDracon
    • CommentTime30 May 2019 zmieniony
     
    @Pin
    SDX nie mam i nie będę miał a działa na mnie jak "płachta na byka"... SPARTAnem nigdy nie zostanę. :P

    @Mono
    Trenuję umysł i ostrożnie rozkminiam niezmierzone oceany informatyki. :D


    Dzięki dla wszystkich z pomocnymi sugestiami. Jeszcze pytanie pomocnicze: czy zadziałałaby pętla "for" (coś jak Kuba wpisał dla Bash) zamiast wpisywania tak jak np. Mgr inż. zaprezentował ("subwersywnie" jakby to KAZ określił)? ;)
    • 10:
       
      CommentAuthorDracon
    • CommentTime30 May 2019 zmieniony
     
    @Mono
    Efektem Twojego rozwiązania pod CMD (Windowz10) jest wg mnie:
    D:\>copy con mkdir.bat
    md %1
    md %2
    md %3
    ^Z
    1 file(s) copied.

    D:\>mkdir.bat

    D:\>md
    The syntax of the command is incorrect.

    D:\>md
    The syntax of the command is incorrect.

    D:\>md
    The syntax of the command is incorrect.



    @Mgr. inż. Rafał
    Zrozumiałem polecenie tak, że nazwy podane są jako parametry wiersza poleceń w jednym ciągu (tzn. polecenie z parametrami albo pyta się użytkownika o te nazwy ), a nie że najpierw tworzy się prosty .bat a potem wywołuje z "ekskrementowymi" nazwami na przykład. Chyba, że to pozornie łatwe zadanie ma jakiś "haczyk". :o
    • 11: CommentAuthorzyga64
    • CommentTime30 May 2019
     
    Spróbuj tak:
    md %1%
    md %2%
    md %3%
    • 12: CommentAuthorfalcon030
    • CommentTime30 May 2019
     
    @Dracon: temat zadania jest tak sformułowany, że pozwala na wiele różnych interpretacji.

    Czy najprostsze rozwiązanie z 3x md %1...3 Cię nie zadowala? Jeśli nie to napisz czemu, będzie łatwiej coś doradzić ...
  3.  
    Noo, generalnie ja tak zrozumiałem, że chodzi o plik bat, który tworzy katalogi na podstawie podanych do niego argumentów.

    Z pętelką można to zrobić tak:

    @echo off
    :rep
    if "%~1"=="" goto end
    mkdir %1
    shift
    goto rep
    :end
    • 14: CommentAuthorpin
    • CommentTime30 May 2019
     
    @Dracon - delikatnie rzecz ujmując przesadzasz. Idzie za tym jakaś szczególna ideologia, tak z ciekawości zapytam? ;)
    • 15: CommentAuthorfalcon030
    • CommentTime30 May 2019
     
    Można dodać np. sprawdzanie ilości przekazywanych parametrów, poprawności nazwy katalogu, informowanie usera co źle podał
    • 16:
       
      CommentAuthorDracon
    • CommentTime30 May 2019 zmieniony
     
    @Mgr_inż
    Wygląda nieźle, ale nie widzę praktycznego wyniku... Chodzi o to, aby za jednym zamachem utworzyć trzy katalogi o nazwach np.
    ATARI
    JEST
    BOSKIE

    ... z wykorzystaniem tego "magicznego" MD %1 itp.
    :(

    @falcon030
    Najprostsze nie zawsze bywa najlepsze. To tworzy mało "przyjazne" nazwy, a poza tym chciałbym to w pętelce. :)

    @Pin
    Już kiedyś wspominałem, że zraziłem się do SDX na cartridge, mało co mi z tym działało, jakoś niezbyt to było wygodne w użyciu, itp. Moim ulubionym DOS-em pozostaje bardzo popularny na ataroscenie w ostatniej dekadzie zeszłego wieku DOS II+/D, wspierający posiadanego przeze mnie (wciąż!) Qmega i Tygrysa (rozsz. do stacji).
    • 17:
       
      CommentAuthormgr_inz_rafal
    • CommentTime30 May 2019 zmieniony
     
    Wygląda nieźle, ale nie widzę praktycznego wyniku...

    Hmm... a co w takim razie widzisz jak napiszesz poniższe?

    mkdir1.bat ATARI JEST BOSKIE


    i potem

    dir
    • 18: CommentAuthorpin
    • CommentTime30 May 2019
     
    @Dracon - po pierwsze, od dwóch dekad system się rozwija, po drugie to nieskonfigurowany system istotnie może być problematyczny w używaniu. Zresztą, zobaczymy się gdzieś przy okazji to pokażę Ci jak to wygląda na dziś dzień. Pełna automatyka wszystkiego, no i playery i inne viewery do prawie wszystkich atarowych i nie tylko formatów, oraz obsługa chyba dowolnego urządzenia I/O, systemu turbo itd. Ok, tyle bo nie taki jest temat tego wątku.
    • 19:
       
      CommentAuthorDracon
    • CommentTime31 May 2019
     
    @mgr_inz_rafal:

    Super, działa idealnie! Wielkie dzięki. :)