Добро пожаловать, Гость. Пожалуйста авторизуйтесь здесь.
FGHIGate на GaNJa NeTWoRK ST@Ti0N - Просмотр сообщения в эхоконференции RU.LINUX
Введите FGHI ссылку:


Присутствуют сообщения из эхоконференции RU.LINUX с датами от 24 Jan 02 06:01:34 до 29 Apr 24 03:15:24, всего сообщений: 8279
Ответить на сообщение К списку сообщений Предыдущее сообщение Следующее сообщение
= Сообщение: 7097 из 8279 ========================================= RU.LINUX =
От   : Vladimir Bormotov                2:5020/400         27 Dec 02 13:29:56
Кому : Kirill Frolov                                       27 Dec 02 13:29:56
Тема : Re: ftp codepage
FGHI : area://RU.LINUX?msgid=vb.dn.ua+740ff859
На   : area://RU.LINUX?msgid=2:5030/827.2+3e0bc421
= Кодировка сообщения определена как: IBM866 =================================
==============================================================================
From: Vladimir Bormotov <bor@vb.dn.ua>


Hi, Kirill!

>>>>> "KF" == Kirill Frolov <Kirill.Frolov@p2.f827.n5030.z2.fidonet.org> writes:

NL>>> Как сказать фтп-клиенту (lftp например)
NL>>> в какой кодировке имена файлов на фтп-сервере (IIS например) ?
NL>>> Заранее thanks
VW>> Запустить его в соответствующей локали

KF> Так он перекодировать-же не будет.
 
 конечно не будет, а зачем? ;-)
 
KF> И ext2fs записывает имена в какой-попало кодировке (а попадает обычно
KF> КОИ8). Интересно, а в utf-8 перевести можно?

 можно.

 переведенные имена проще всего смотреть через ls | iconv  
 
====
#!/usr/bin/python2
"""recode filenames from one encoding to another"""

import os
import sys
import getopt

ENC_FROM = 'koi8-r'
ENC_TO = 'cp1251'


def usage():
    print '''\
USAGE>> names_recode [-f <from_encoding>] [-t <to_encoding] <path>

 from_encoding   - source filenames encoding
 to_encoding     - target filenames encoding
 path            - path to process filenames (not recursive)

 defaults: from_encoding = %s, to_encoding = %s
''' % (ENC_FROM, ENC_TO)
    sys.exit(1)

def frename(fname, enc_from, enc_to):
    _new_name = unicode(fname, enc_from).encode(enc_to)
    os.rename(fname, _new_name)
    return _new_name

def main(args):
    try:
        (_opts, _arg) = getopt.getopt(args, 'f:t:')
    except GetoptError:
        print 'Options error'
        usage()
    if len(_arg) != 1:
        print 'You must provide a path'
        usage()
    else:
        _dir = _arg[0]

    for _opt, _value in _opts:
        if _opt == '-f': ENC_FROM = _value
        if _opt == '-t': ENC_TO = _value

    print 'Process rename filenames in directroy "%s" from %s to %s' % \
          (_dir, ENC_FROM, ENC_TO)

    _cur_dir = os.getcwd()
    os.chdir(_dir)
    for _filename in os.listdir('.'):
        frename(_filename, ENC_FROM, ENC_TO)
    os.chdir(_cur_dir)
    return 0

if __name__ == '__main__':
    main(sys.argv[1:])
====
 
--
Bor.
--- ifmail v.2.15dev5
* Origin: BorHomeLand (2:5020/400)

К главной странице гейта
Powered by NoSFeRaTU`s FGHIGate
Открытие страницы: 0.061815 секунды