Re[2]: win -> dos

2003-04-22 Пенетрантность Комаров Алексей
Hello Dimitry,

Вы писали 22 апреля 2003 г., 8:18:36:

DNN> В сообщении от 21 Апрель 2003 20:15 Dmitry Astapov написал:
>> Evening, Sergey.
>>
>> Sergey <[EMAIL PROTECTED]> 17:09 21/4/2003 wrote:
>> >>   Есть идея - сканировать раз в сутки все *.txt файлы и делать из них
>> >>   один большой текстовый файл, а уже в нем искать описания. Как это
>> >>   сделать проще?
>>
>>  S> for i in */*/*; do cat $i | xcode -a +w > $i.new && mv -f $i.net $i ;
>>  S> done Потянет?
>>
>> Потянет на "This week's most useless use of cat" :)
>>
>> for i in `find . -type f -name '*.txt'` ; do xcode -a +w < "$i" > "$i.new"
>> && mv -f "$i.new" "$i" ; done

DNN> у обеих вариантах есть один недостаток --- перекодированный файл тоже 
будет с 
DNN> суфиксом .txt и при повторном запуске скрипта (например на следующие 
сутки, 
DNN> как предполагает автор треда) он снова будет перекодирован. я не уверет, 
что 
DNN> это именно то чего хотел автор... ТЕ ЭТОТ СКРИПТ НУЖНО ЗАПУСКАТЬ ТОЛЬКО 
ОДИН 
DNN> РАЗ  или делать 
DNN>  for i in `find . -type f -name '*.txt'` ; do xcode -a +w < "$i" > 
"$i.dos"; 
DNN> done
DNN> в этом случае в файлах txt будет оригинальное описание в виндовой 
кодировке, а 
DNN> в .txt.dos --- перекодированное в cp866

Огромное спасибо за это уточнение! На самом деле оригинальная
кодировка уже не нужна будет, поэтому оригинал я буду удалять.
Еще раз всем спасибо.



-- 
С Уважением,
Комаров Алексей mailto:[EMAIL PROTECTED]



Re: win -> dos

2003-04-21 Пенетрантность Dimitry N. Naldaev
В сообщении от 21 Апрель 2003 20:15 Dmitry Astapov написал:
> Evening, Sergey.
>
> Sergey <[EMAIL PROTECTED]> 17:09 21/4/2003 wrote:
> >>   Есть идея - сканировать раз в сутки все *.txt файлы и делать из них
> >>   один большой текстовый файл, а уже в нем искать описания. Как это
> >>   сделать проще?
>
>  S> for i in */*/*; do cat $i | xcode -a +w > $i.new && mv -f $i.net $i ;
>  S> done Потянет?
>
> Потянет на "This week's most useless use of cat" :)
>
> for i in `find . -type f -name '*.txt'` ; do xcode -a +w < "$i" > "$i.new"
> && mv -f "$i.new" "$i" ; done

у обеих вариантах есть один недостаток --- перекодированный файл тоже будет с 
суфиксом .txt и при повторном запуске скрипта (например на следующие сутки, 
как предполагает автор треда) он снова будет перекодирован. я не уверет, что 
это именно то чего хотел автор... ТЕ ЭТОТ СКРИПТ НУЖНО ЗАПУСКАТЬ ТОЛЬКО ОДИН 
РАЗ  или делать 
 for i in `find . -type f -name '*.txt'` ; do xcode -a +w < "$i" > "$i.dos"; 
done
в этом случае в файлах txt будет оригинальное описание в виндовой кодировке, а 
в .txt.dos --- перекодированное в cp866



Re: win -> dos

2003-04-21 Пенетрантность Oleg P. Philon
Привет, коллеги.

On Mon, Apr 21, 2003 at 05:15:06PM +0300, Dmitry Astapov wrote:
> for i in `find . -type f -name '*.txt'` ; do xcode -a +w < "$i" > "$i.new" &&
> mv -f "$i.new" "$i" ; done

Массовые перекодировки можно делать через konwert

... $ find . -type f -name \*\.txt|xargs konwert cp1251-koi8r -O

> Dmitry Astapov //ADEpt   E-mail: [EMAIL PROTECTED]
> GPG KeyID/fprint: F5D7639D/CA36 E6C4 815D 434D 0498  2B08 7867 4860 F5D7 639D

Auf Wiederlesenophil aka Д-р Антикоммуний
--
Oleg P. Philon  http://gomelug.agava.ru/articles
Linux Lab, Gomel, Belarus   mailto:[EMAIL PROTECTED]
http://anticommunist.narod.ru   mailto:[EMAIL PROTECTED]



Re: win -> dos

2003-04-21 Пенетрантность Dmitry Astapov

Evening, Sergey. 

Sergey <[EMAIL PROTECTED]> 17:09 21/4/2003 wrote:

>>
>>   Есть идея - сканировать раз в сутки все *.txt файлы и делать из них
>>   один большой текстовый файл, а уже в нем искать описания. Как это
>>   сделать проще?
 S> for i in */*/*; do cat $i | xcode -a +w > $i.new && mv -f $i.net $i ;
 S> done Потянет?

Потянет на "This week's most useless use of cat" :)

for i in `find . -type f -name '*.txt'` ; do xcode -a +w < "$i" > "$i.new" &&
mv -f "$i.new" "$i" ; done


-- 
Dmitry Astapov //ADEpt   E-mail: [EMAIL PROTECTED]
GPG KeyID/fprint: F5D7639D/CA36 E6C4 815D 434D 0498  2B08 7867 4860 F5D7 639D



Re[2]: win -> dos

2003-04-21 Пенетрантность Комаров Алексей
Hello Sergey,

Вы писали 21 апреля 2003 г., 15:09:32:

>>   Необходимо все текстовые файлы конвертировать из win в dos, чтоб
>>   можно было искать в них описания (пока ищем в far'e, он по ftp
>>   хорошо понимает dos-ую кодировку).
>>   
>>   Есть  идея - сканировать раз в сутки все *.txt файлы и делать из них
>>   один  большой  текстовый  файл, а уже в нем искать описания. Как это
>>   сделать проще?
S> for i in */*/*; do cat $i | xcode -a +w > $i.new && mv -f $i.net $i ; done
S> Потянет?
Как тяжело с сознанием M$ осваивать безграничность Linux... в одиночку ...

В общем, огромное спасибочки.

-- 
С Уважением,
Комаров Алексей mailto:[EMAIL PROTECTED]



Re: win -> dos

2003-04-21 Пенетрантность Sergey
В Пнд, 21.04.2003, в 16:45, Комаров Алексей пишет:
> Здравствуйте debian-russian,
> 
>   Имеется куча каталогов и в них куча подкаталогов. В каждом каталоге
>   присутствует файл 1.txt, который содержит описание графических
>   файлов находящихся в данном каталоге.
>   Изначально было создано все в W2k, а теперь переносим под Woody 3.0
>   на ftp сервер.
>   Необходимо все текстовые файлы конвертировать из win в dos, чтоб
>   можно было искать в них описания (пока ищем в far'e, он по ftp
>   хорошо понимает dos-ую кодировку).
>   
>   Есть  идея - сканировать раз в сутки все *.txt файлы и делать из них
>   один  большой  текстовый  файл, а уже в нем искать описания. Как это
>   сделать проще?
for i in */*/*; do cat $i | xcode -a +w > $i.new && mv -f $i.net $i ; done
Потянет?
>   (файл типа:
>   путь к файлу на диске.
>   текстовое содержание файла.
> 
>   путь к файлу на диске.
>   текстовое содержание файла.
> 
>   ...)
> 
> --
> С Уважением,
> Комаров Алексей   mailto:[EMAIL PROTECTED]
-- 
-
echo '16i[q]sa[ln0=aln100%Pln100/snlbx]sb20293A2058554E494Csnlbxq'|dc

Best Regardsmailto:[EMAIL PROTECTED]
Mokeev Sergey   http://sux.csu.ac.ru/
ICQ UIN:168860082

// xcode.C (formerly auto2unix.cc)
// This program tries to determine input document encoding
// and to convert it to koi8, CP-1251 or cp866.

// Written  by Andrey V. Lukyanov on May 14, 1997
// Last modified on May 18, 1997

// Updated to convert to /don't kill me/ cp1251 (oh, god! I hate it!)
// instead of KOI-8 (original)
// by Cyril Rotmistrovsky
// Updated to make conversions to cp1251, cp866 and koi8-r (default)
// depending on flags
// by Cyril Rotmistrovsky
// Modified on Oct 19, 1997
// Modified by Cyril Rotmistrovsky to be compiled by Watcom C++ 10.0
// (Oh, God! what a non-standard compiler!)
// Last modified on Jun 18 1998

// Modified by Igor V. Krassikov (KIV without Co)
// for quoted-printable decodeing

// Name changed to xcode 


#include 
#include 
#include 
#include 
#include 

#ifndef KOI8_WIN
#define KOI8_WIN \
"\x94\x83\xaa\x8f\x90\xa9\x93\x84\x92\x91\x95\xaf\xac\xab\xad\xae" \
"\x80\x81\x82\xb4\xbe\xb9\xbb\xb7\xb3\xb2\xbf\xb5\xb8\xbd\xba\xb6" \
"\x9d\x8a\xa5\xb1\xa6\x99\x88\x87\x8b\xa4\xa3\x98\x8e\x8d\x8c\x96" \
"\x97\x9c\x85\xb0\x86\x89\xa1\xa2\x9b\x9f\xa0\x9a\xa8\xa7\x9e\xbc" \
"\xfe\xe0\xe1\xf6\xe4\xe5\xf4\xe3\xf5\xe8\xe9\xea\xeb\xec\xed\xee" \
"\xef\xff\xf0\xf1\xf2\xf3\xe6\xe2\xfc\xfb\xe7\xf8\xfd\xf9\xf7\xfa" \
"\xde\xc0\xc1\xd6\xc4\xc5\xd4\xc3\xd5\xc8\xc9\xca\xcb\xcc\xcd\xce" \
"\xcf\xdf\xd0\xd1\xd2\xd3\xc6\xc2\xdc\xdb\xc7\xd8\xdd\xd9\xd7\xda"
#endif
#ifndef KOI8_ALT
#define KOI8_ALT \
 "\xc4\xb3\xda\xbf\xc0\xd9\xc3\xb4" \
 "\xc2\xc1\xc5\xdf\xdc\xdb\xdd\xde" \
 "\xb0\xb1\xb2\xf4\xfe\xf9\xfb\xf7" \
 "\xf3\xf2\xff\xf5\xf8\xfd\xfa\xf6" \
 "\xcd\xba\xd5\xf1\xd6\xc9\xb8\xb7" \
 "\xbb\xd4\xd3\xc8\xbe\xbd\xbc\xc6" \
 "\xc7\xcc\xb5\xf0\xb6\xb9\xd1\xd2" \
 "\xcb\xcf\xd0\xca\xd8\xd7\xce\xfc" \
 "\xee\xa0\xa1\xe6\xa4\xa5\xe4\xa3" \
 "\xe5\xa8\xa9\xaa\xab\xac\xad\xae" \
 "\xaf\xef\xe0\xe1\xe2\xe3\xa6\xa2" \
 "\xec\xeb\xa7\xe8\xed\xe9\xe7\xea" \
 "\x9e\x80\x81\x96\x84\x85\x94\x83" \
 "\x95\x88\x89\x8a\x8b\x8c\x48\x8e" \
 "\x8f\x9f\x90\x91\x92\x93\x86\x82" \
 "\x9c\x9b\x87\x98\x9d\x99\x97\x9a"

#endif

#define NUMCOD 5

unsigned char* destTab[]={
	(unsigned char *)KOI8_ALT,
	(unsigned char *)KOI8_WIN
};

char * help[]={
	"This program tries to determine input document encoding\n",
	"and to convert it to desired one\n",
	"\n",
	"Written by Andrey V. Lukyanov on May 14, 1997  "
	"Last modified on May 18, 1997\n",
	"Updated by Cyril Rotmistrovsky "
	"Last modified on Oct 19, 1997\n",
	"Updated by Igor V. Krassikov   "
	"Last modified on Oct 29, 1998\n",
	"\n",
	"Usage: %s [-h|-H|-?] [-w|-k|-a] [+w|+k|+a|+i|+m] [-q] "
	"[input [output]]\n",
	"-q to disable quoted-pritable decoding\n",
	"-k to set   koi8  output\n",
	"-w to set   cp1251output\n",
	"-a to set   cp866 output(default)\n",
	"+k to force koi8  input\n",
	"+w to force cp1251input\n",
	"+a to force cp866 input\n",
	"+i to force iso8859-5 input\n",
	"+m to force mac   input\n",
	0
};

char * encName[]={"koi8","cp866","cp1251","iso8859-5","mac"};

unsigned char recode_table[NUMCOD][128]={
	{   //koi8
	128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,
	144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,
	160,161,162,163,164,165,166,167,168,169,170,171,172,'-',174,175,
	176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,
	192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,
	208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,
	224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,
	240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255
	},
	{ //dos
	225,226,247,231,228,229,246,2

Re: win -> dos

2003-04-21 Пенетрантность Gerasimov Dmitry
On Mon, Apr 21, 2003 at 02:45:32PM +0400, Комаров Алексей wrote:
> Здравствуйте debian-russian,
> 
>   Имеется куча каталогов и в них куча подкаталогов. В каждом каталоге
>   присутствует файл 1.txt, который содержит описание графических
>   файлов находящихся в данном каталоге.
>   Изначально было создано все в W2k, а теперь переносим под Woody 3.0
>   на ftp сервер.
>   Необходимо все текстовые файлы конвертировать из win в dos, чтоб
>   можно было искать в них описания (пока ищем в far'e, он по ftp
>   хорошо понимает dos-ую кодировку).
>   
>   Есть  идея - сканировать раз в сутки все *.txt файлы и делать из них
>   один  большой  текстовый  файл, а уже в нем искать описания. Как это
>   сделать проще?
>   (файл типа:
>   путь к файлу на диске.
>   текстовое содержание файла.
Ээ.. ну типа совсем не сложно написать скрипт на баше, который будет
пробегать по дереву каталогов и конвертировать некоторые файлы из одной
кодировки в другую. Я например люблю конвертировать с помощью утилиты
enca.. Но это конечно, если все на локальном компутере...
> 
>   путь к файлу на диске.
>   текстовое содержание файла.
> 
>   ...)
> 
> --
> С Уважением,
> Комаров Алексей   mailto:[EMAIL PROTECTED]
> 
> 
> -- 
> To UNSUBSCRIBE, email to [EMAIL PROTECTED]
> with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
> 
--
Gerasimov Dmitry
e-mail: matrix AT podlipki DOT ru




win -> dos

2003-04-21 Пенетрантность Комаров Алексей
Здравствуйте debian-russian,

  Имеется куча каталогов и в них куча подкаталогов. В каждом каталоге
  присутствует файл 1.txt, который содержит описание графических
  файлов находящихся в данном каталоге.
  Изначально было создано все в W2k, а теперь переносим под Woody 3.0
  на ftp сервер.
  Необходимо все текстовые файлы конвертировать из win в dos, чтоб
  можно было искать в них описания (пока ищем в far'e, он по ftp
  хорошо понимает dos-ую кодировку).
  
  Есть  идея - сканировать раз в сутки все *.txt файлы и делать из них
  один  большой  текстовый  файл, а уже в нем искать описания. Как это
  сделать проще?
  (файл типа:
  путь к файлу на диске.
  текстовое содержание файла.

  путь к файлу на диске.
  текстовое содержание файла.

  ...)

--
С Уважением,
Комаров Алексей   mailto:[EMAIL PROTECTED]