Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Emulacja MS-DOS w Windows XP - Złe rozpoznawanie nazwy przez polecenie "cop

butlonosik 11 Maj 2015 23:20 549 8
  • #1 11 Maj 2015 23:20
    butlonosik
    Poziom 12  

    Napisałem taki skrypt w MS-DOS

    Code:
    @echo off
    
    set /p zrudlo=Podaj loaklizację katalogu żródłowego - podczas wyświetlania obrazka wciśnij I i wklej tu zawartość pola "Katalog" z ostanim \ :
    set /p cel=Podaj loaklizację katalogu docelowego, do którego kopiowałeś dokumenty z ostanim \ :
    set strona=0
    :dodaj
    set /a strona=%strona%+1
    if exist "%zrudlo%*%strona%.*" goto dodaj

    set /a strony=%strona%-1
    md "%cel%1 strona"
    move /y "%cel%*.*" "%cel%1 strona"
    md "%cel%2 strona"
    set strona=1
    :powturz
    cd /d "%cel%1 strona"
    if not exist *%strona%.* goto dalej
    set /a kopia=%strony%-%strona%+1
    cd /d "%zrudlo%..\2 strona"
    copy /y *%kopia%.* "%cel%2 strona"
    :dalej
    if %strona%==%strony% goto koniec
    set /a strona=%strona%+1
    goto powturz
    :koniec
    "%WinDir%\Explorer.exe" "%cel%2 strona"
    "%WinDir%\Explorer.exe" "%cel%1 strona"

    Problem w tym, że copy zamiast kopiować plik, który w nazwie zawiera konkretną liczbę, to kopiuje jeszcze jeden, który tej liczby w nazwie nie zawiera

    0 8
  • #2 11 Maj 2015 23:44
    -psiak-
    Poziom 32  

    Może dodaj polecenie:

    Code:
    echo copy /y *%kopia%.* "%cel%2 strona"

    przed kopiowaniem podaj co się wyświetliło oraz jakie pliki zostały skopiowane.

    0
  • #3 11 Maj 2015 23:49
    butlonosik
    Poziom 12  

    Code:

    M:\moje\pomoce\pliki wsadowe\start\przygotuj dokumenty do druku\testowe dokumenty\2 strona
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    22:47 copy /y *3.* "M:\moje\pomoce\pliki wsadowe\start\przygotuj dokumenty do druku\do wydruku\2 strona"
    historia horoby 003.BMP
    historia horoby 002.BMP
    Liczba skopiowanych plików:         2.

    *3.* - nazwa generowana w wyniku działania pętli

    0
  • #4 12 Maj 2015 02:19
    -psiak-
    Poziom 32  

    Wg mnie działa poprawnie:

    Code:
    C:\Temp\test>dir
    
     Volume in drive C has no label.
     Volume Serial Number is 8092-4A41

     Directory of C:\Temp\test

    2015-05-12  02:16    <DIR>          .
    2015-05-12  02:16    <DIR>          ..
    2015-05-12  02:17    <DIR>          add
    2015-05-12  02:16                 3 historia horoby 002.BMP
    2015-05-12  02:16                 3 historia horoby 003.BMP
                   2 File(s)              6 bytes
                   3 Dir(s)  818 983 202 816 bytes free

    C:\Temp\test>dir add
     Volume in drive C has no label.
     Volume Serial Number is 8092-4A41

     Directory of C:\Temp\test\add

    2015-05-12  02:17    <DIR>          .
    2015-05-12  02:17    <DIR>          ..
                   0 File(s)              0 bytes
                   2 Dir(s)  818 983 202 816 bytes free

    C:\Temp\test>copy *3.* add
    historia horoby 003.BMP
            1 file(s) copied.

    C:\Temp\test>dir add
     Volume in drive C has no label.
     Volume Serial Number is 8092-4A41

     Directory of C:\Temp\test\add

    2015-05-12  02:17    <DIR>          .
    2015-05-12  02:17    <DIR>          ..
    2015-05-12  02:16                 3 historia horoby 003.BMP
                   1 File(s)              3 bytes
                   2 Dir(s)  818 983 198 720 bytes free

    0
  • #5 12 Maj 2015 11:38
    butlonosik
    Poziom 12  

    Czyli coś musi być u mnie z systemem?
    A znasz jakiegoś dobrego antywirusa, który by pomógł to rozwiązać? Ja używam 30 dniowego Eset'a

    0
  • #6 12 Maj 2015 12:29
    -psiak-
    Poziom 32  

    To nie ma nic a nic wspólnego z wirusami.
    Zwyczajnie coś nie tak popatrzyłeś, coś nie tak skopiowałeś itp.

    0
  • #7 14 Maj 2015 08:44
    butlonosik
    Poziom 12  

    Ale co by to mogło być?

    0
  • #8 14 Maj 2015 11:14
    -psiak-
    Poziom 32  

    Może to być na przykład kodowanie w pliku wsadowym.

    0
  • #9 15 Maj 2015 00:08
    butlonosik
    Poziom 12  

    Pliki wsadowe tworzę w programie Word Pad (tym standardowo dodawanym do Windows XP), a następnie zapisuje jako "Dokument Tekstowy - format MS-DOS". W ten sposób zapisuje mi poprawnie typowo polskie litery (te z "ogonkami")

    0