(c)  騭, ᪢

E-mail: bestview@mtu-net.ru
WWW   : http://www.ivr.da.ru

       ஢ઠ ᮢ  䠩  ⭮ ०
       

(" " 11/2006, 6/2007)

    -  諮 ⮫  ⠪ 祩: ६ 
६ ⮬᪨ ᮧ  䠩 ( - "
䠩"),  ⥬ 㦭 ࠢ  ।饩 ᨥ ⮣
䠩 ( - " 䠩"). ᫨  ᮤন ࠧ砥,
  ᪮஢ ଠ   䠩  . ⥬
  砥  䠩  㤠.  ,  
ந ࠢ,  ᥣ ஢ ଠ:  ᫨
䠩 ᮢ,   ஢ 㦥  ⠭.  㦥
-⠪ ⠭,   祬: ᫥ ஢  
ண 䠩 -   ,  뫠  .    뫮
, ⮡  ᮢ 䠩  ண 䠩 ⠢
.   ⮬,   ᮡࠫ   䠩
 ᢮ -࠭, ᭮뢠    : ᫨ 
  ।饣  -࠭,  ஢,
 - , ⠪    ।饣 
-࠭ ᮤন ⮣ 䠩  .  ᫨ 
 ,    㦠 䠩 ୮? 㤥
⮫쪮   ६,  ⮣-   ⥫ .
     ࠢ ᮤন 䠩 㦨  fc. 
㬮砭  뢮 १ ᢮ ࠡ  ࠭:  ࢮ
ப - ᮮ饭 "ࠢ 䠩"    ࠢ
䠩 ( ࠭  ଠ   ᪮쪮 ப,
 ᪨   ࠢ  ப),   ன ப 
ᮢ 䠩 뢮 ᮮ饭 "FC: ࠧ  "
( 类 砥,  ⠪  룫廊    Windows 95
RUS; 祢,  㣨   ⥪ ⮣ ᮮ饭 
 㣨). ᫨  䠩  ᮢ,   ன 
᫥ ப 뢮 ଠ  㦥
ࠧ.
     ࠧ,  ᬮ,  뢥  ࠭ 
fc, , 室  ⮣, , ஢  ଠ 
 䠩  .   ⥫   
⮬⨧஢, ᠢ bat-䠩, ஬ । 
  䠩 (  ண)   뢠 
 fc   ࠢ  ⥬,  १ 
ࠡ,  ஢ ଠ   䠩  , 
,  ⮬    㤠  䠩.
       ஡: 㦨,   fc 
頥  室, 騩  ⮣, ᮢ ࠢ
䠩  .   ,   ஢ਫ ᯥਬ⠫쭮,
頥 0.    ⮣ ஢ १ ࠡ ⮩
  bat-䠩?
     ਭ樯  뫮   ᮡ⢥ ணࠬ
 ࠢ 䠩,   室,  
 ᮢ ࠢ 䠩.  ⥫  
⮥ 襭.    ᯮ  饩   ணࠬ
ssed 3.62.
    Ssed (super-sed,  sed ஢뢠  Stream
EDitor) -  ணࠬ  ࠡ⪨ ⥪, ⠪ 뢠
⥪⮢ 䨫.  砥 ப ⥪  ⠭⭮
 (  䠩), ࠡ뢠   ᮮ⢥⢨  
ணࠬ (ਯ⮬)  뤠 १  ⠭ 뢮.
㧨 ᯮ塞 䠩 ssed  Windows,  ⠪ 室
⥪  㬥   ࠭
http://sed.sourceforge.net/grabbag/ssed/.
        樨 뫮  ,   ਯ
 ssed   ᯮ짮  襭 ࠡ
 饭 㪠  室. 室  ⮣,  訫
ᤥ ⠪: ࠢ 室  fc  室 ssed,  ਯ
 ssed ⠢ ⠪, ⮡  ᮢ ன ப
ࠡ뢠 ⥪ (  室  fc)
 ப "FC: ࠧ  " ssed 頫  室
255,   ⨢ 砥 -   室 (0, ᫨ 
ࠡ ssed  뫮  訡).
    ਯ 稫 祭 :

2 s/^FC: ࠧ  $//
T
q255

    ⮡ ᭨,   ࠡ⠥, ᪠ ᭠砫  
᫮,   ssed ࠡ뢠 ⥪.  ⥩襬 砥
 ⠥  ப ⥪, ᫥⥫쭮 믮
᫥  ਯ , 뤠 ࠡ⠭ ப 
室,  ⥬   ⢨   ᫥饩 ப
⥪,  ⠪ ,  ⥪  .
     ࢮ ப 襯ਢ񭭮 ਯ 室  s
(   ப).  ।  砥,  
㤥 믮 ⮫쪮  ன ப ࠡ뢠 ⥪.
    ப  ᪠  ⮩  - "^FC: ࠧ 
$",  <^> 砥 砫 ப,  <$> -  (..
। ᪮ ப  ᫥   ப 祣  
).  ,   ᠬ ப,  뢮
 fc  ᮢ 䠩 (    ப,
뢮  fc, ⮬  ।  ᪠  
⮨ 2).
    ப    ⮩  -  ப (
 祭  , ⠪  ࠡ⠭ ⥪,
祭  १ ࠡ ssed,   砥  
ᯮ:    ⮫쪮   室). 
᪠   㦭  ⮬ ਯ, ⮫쪮 ⮡ ⮬
஢, 뫮  ᮢ   믮  .
     ஢ઠ  ࠧ ந  ᫥饩 ப ਯ
( T). ᫨  ⥪饩 ࠡ뢠 ப  뫮
䨪஢ ᮢ  믮  ᪠  
(: ᫨ ࠡ뢠   ப ⥪, 
襮ᠭ  ᪠    㤥 믮,
 , ᮢ   㤥 䨪஢), 
 믮  T ࠡ⪠ ⥪饩 ப ⥪
稢  稭  横 (ࠡ⪠ ᫥饩
ப ⥪). ᫨  ᮢ 뫮,    祣
  -  ந室 室  ᫥饩 .
     q255  쥩 ப ਯ -  
襭 ࠡ  饭  室 255.  ᫥
 ᠭ । ,   믮, ⮫쪮
᫨  ப ࠡ뢠 ⥪ -  "FC: ࠧ
 ".     믮  室  ssed
ந ᫥ ᬮ ᥣ    室 ⥪;
 ⮬ 砥 ssed   0 (  室).
    ᬮ७ ਯ   ᠭ   ப (
   אַ   ப  ᪥
ssed):

2s/^FC: ࠧ  $//;T;q255

    ⠪,  ⠢ ⮫쪮  bat-䠩,  ஬
ਫ  砫 .  䠩 (  
cmp_move.bat) ⠪ 稫 祭 :

@fc %1 %2 | ssed -n "2s/^FC: ࠧ  $//;T;q255"
@if not errorlevel 255 copy /y %1 %2
@del %1

     @ ।   ப 㦥, ⮡  ப
 ⠫  믮 bat-䠩.
     ࢮ ப 뢠  fc, ன  ⢥
室 ࠬ஢ ।    ண 䠩,
㪠  ᪥ bat-䠩 ( 
ᮮ⢥⢥ %1  %2). ,    ࠢ 䠩 -
⥪⮢,   ࠢ  䠩  㪠 
/b, ..  "fc %1 %2"   "fc /b %1 %2" ( ᫨
७ ࠢ 䠩 - exe, com, sys, obj, lib 
                                                            1
bin,  ⮬᪨ 㤥 ࠭ ० 筮 ࠢ ).
      ࢮ ப  ᨬ <|>, 騩,  
뢮  fc 㤥 ।  室 ᫥饩 .
  砥   맮 ssed  樥 -n (
⪫祭 뢮 - ⮡ ssed  ⠫ ࠡ⠭  ⥪)
 㦥   ਯ⮬.
     ன ப   室, 
᫥ 믮  (..  맮 ssed), 
᫨   255 (䠩  ᮢ),  뢠 
copy  ஢ ᮤন  䠩  .  /y
 ⮩  ⪫砥 뤠   ⢥ত
१ 䠩.
     쥩 ப 室  del, 㤠 
䠩.
    ,  ᬮ७ bat-䠩 易⥫쭮  
 ୠ⨢ ஢ DOS (CP866),    ⠪
஢  fc 뢮 ப "FC: ࠧ  ".

    ᫥⢨ ஢ ᮢ 䠩  
ᯮ짮  襭    - ᠭ bat-䠩
 ⮬᪮ ஢ ᢮ ணࠬ. ᪠  
⮬.
    ਬ,   ணࠬ program.exe,  ᪥
ன   ப 㪠뢠   䠩; 
ࠡ뢠   ࢮ 䠩  뢠 १ 
ன.  ,    ⮨  䠩  묨
 䠩  १⮬ ࠢ쭮 ࠡ⪨  .
⨬, ⠪ ⮢ ,  ࢮ  䠩 뢠
test_1.txt  right_1.txt,   ஬ ᮮ⢥⢥ test_2.txt
 right_2.txt.  ⭮,   ࠡ⪥  ⮢
 ணࠬ   ࠡ  㫥  室.
    㦭  bat-䠩, ஢騩, ⢨⥫쭮  
ணࠬ  ࠡ⪥ 䠩 test_1.txt 뤠 ⠪ 
१,   䠩 right_1.txt (筮  䠩
test_2.txt  right_2.txt),  ⢨⥫쭮    ⮬
蠥 ࠡ  㫥  室.
     믮騩   bat-䠩; ,   ।騩,
   ୠ⨢ ஢ DOS (CP866).

@echo off

program.exe source_1.txt result_1.txt
if errorlevel 1 goto error1
fc right_1.txt result_1.txt | ssed -n "2s/^FC: ࠧ  $//;T;q255"
if not errorlevel 255 goto error1
del result_1.txt

program.exe source_2.txt result_2.txt
if errorlevel 1 goto error2
fc right_2.txt result_2.txt | ssed -n "2s/^FC: ࠧ  $//;T;q255"
if not errorlevel 255 goto error2
del result_2.txt

echo Test passed!
goto end

:error1
echo Error in test 1!
goto end

:error2
echo Error in test 2!

:end

     뢮 ᮮ饭 "Test passed!", ᫨ ஢
諮 ᯥ譮,  "Error in test 1!"  "Error in test 2!",
᫨ ᮮ⢥騩   ன (.. 㥬
ணࠬ 訫  㫥  室 / १
 ࠡ   ⠪,   ). ᫨  ன
 ,  ன  ࠡ뢠.
     宦   ᮧ ६ 䠩
 १⮬ ࠡ ணࠬ ( ࢮ  -
result_1.txt,  ண - result_2.txt).  㤠, ᫨
 ன ᯥ譮,  - ,   ᫥⢨
ࠢ   ࠢ १⮬   ⭮
ࠧ  .
    㬠, 㤭 ,  ஢  bat-䠩
 筮 樨, , ᪠,  㣮 ⢠
⮢   ,  ணࠬ 뤠   䠩
 १⠬ ࠡ,  ᪮쪮. ᫨ 㥬 ணࠬ
뤠  ⥪⮢ १,  ,    fc
 bat-䠩   㪠  /b.





     ६, 襤襥 ᫥ ᠭ  "஢ઠ
ᮢ  䠩  ⭮ ०" (" " N11/06), 
㦨 ᫥饥:

1.  Windows XP SP2 RUS  ⫨稥  Windows 95 RUS  fc
   頥  室, 騩  १ ࠢ
   䠩: 0  ᮢ  1  ᮢ.   ᫨
   ॡ ஢ ᮢ 䠩  ⮩ ,  ᠭ
      ⮤  ᯮ짮 ssed ⠭
   㦭.

2.  ⮤  ᯮ짮 ssed  ࠡ⠥  Windows XP SP2
   RUS ( ⢥,  ࠢ 䠩 ࠧ,   ⮬
   砥,   ᠬ   ).  
     ᪠ ssed:

   ssed -n "2s/^FC: ࠧ  $//;T;q255"

     ᭨ ᯥਬ⠫ ,  믮 ⮩
     ४ ᮤঠ騩   ਯ 
   ஢ DOS (CP866)  Windows-1251, ० 祬 । 
   ssed'.   ४஢  蠥 ࠡ
   ணࠬ.

     裡  襨 ।⠢  宦
⠪ ᯮᮡ ஢ન ᮢ  䠩,  ࠡ⠫
   㪠 .  ।  ᯮᮡ.

1.  뭥 ਯ (ப "2s/^FC: ࠧ 
   $//;T;q255" -  祪, ࠧ㬥)  ⤥
   䠩  ஢ DOS (CP866).   ⮣ 䠩 - ᪠,
   check_eq.sed, ⮣  ᪠ ssed 塞 ⠪:

   ssed -n -f check_eq.sed

     ४஢ ਯ ந室  㤥,
     㤥 ࠡ ࠢ쭮.

2.   ᮧ ⥫ 䠩  ਯ⮬, 
    ᪨ 㪢   ⭠ 
    ஢ DOS (CP866).  ᤥ ਯ ⢨⥫
    ४஢.  ᪠ ssed ⮣ 㤥 룫拉
   ⠪:

   ssed -n "2s/^FC: \xE0\xA0\xA7\xAB\xA8\xE7\xA8\xEF \xAD\xA5 \xAD\xA0\xA9\xA4\xA5\xAD\xEB$//;T;q255"

   ,  ,  ਯ  ⮬ ⭮ ⠥.
    १ ப bat-䠩, ᮤঠ  
   ᪠ ssed,   譥 , ,  
   ,  Windows XP  ࠡ⪥ ᫨誮 
   ப bat-䠩  ஬ command.com
   ਭ   ⮫쪮  127-128  ᨬ
   ( 㦥 ᫥ ⠭ 祭 ६  ப).


1
 ୮ .. IBM PC  짮⥫. . 5-, .  .
 .:   ⨪, 1994.




    㣨    bat-䠩:

1. "⮪஫ 浪 ᪠ bat-䠩". " " 4/2007.
