Полномочия набора на сжатом файле в Python

Лучший способ для этого - настроить локальный сервер zeppelin на своем ноутбуке и подключаться к конечной точке разработки, которая настраивается каждый день. Просто создайте ssh-соединение между конечной точкой Glue Dev и zeppelin, используя URL-адрес Glue DEP, доступный на консоли Glue. Пожалуйста, обратитесь к этим ссылкам для получения дополнительной информации о настройке локального сервера Zeppelin и т. Д.

Справочник по настройке локального сервера Zeppelin

Дайте мне знать, если у вас возникнут какие-либо проблемы.

7
задан Harley Holcombe 11 November 2008 в 05:22
поделиться

3 ответа

У меня была подобная проблема Вам, таким образом, вот спинет кода от моего материала, это я верю, должен помочь здесь.

# extract all of the zip
for file in zf.filelist:
    name = file.filename
    perm = ((file.external_attr >> 16L) & 0777)
    if name.endswith('/'):
        outfile = os.path.join(dir, name)
        os.mkdir(outfile, perm)
    else:
        outfile = os.path.join(dir, name)
        fh = os.open(outfile, os.O_CREAT | os.O_WRONLY , perm)
        os.write(fh, zf.read(name))
        os.close(fh)
    print "Extracting: " + outfile

Вы могли бы сделать что-то подобное, но вставить Вашу собственную логику для вычисления значения перманента. Я должен отметить, что использую Python 2.5 здесь, я знаю о нескольких несовместимостях с некоторыми версиями поддержки zipfile Python.

4
ответ дан 7 December 2019 в 12:26
поделиться

Извлечение к stdout (разархивировали-p), и перенаправление в файл? Если существует больше чем один файл в zip, Вы могли бы перечислить содержание zip и затем извлечь по одному.

for n in `unzip -l test.zip | awk 'NR > 3 && NF == 4 { print $4 }'`; do unzip -p test.zip $n > $n; done

(да, я знаю, что Вы отметили этот 'Python' :-))

0
ответ дан 7 December 2019 в 12:26
поделиться

На документацию разархивируйте, устанавливает полномочия на сохраненных, под Unix. Кроме того, оболочка umask не используется. Ваш лучший выбор состоит в том, чтобы удостовериться, что перманент установлен перед архивированием файла.

Так как Вы не можете сделать этого, необходимо будет попытаться сделать то, что Вы пытались сделать (и заставить это работать под Debian.)

Было много проблем с Python zipfile библиотека, включая установку режима writestr к тому из файла, записанного в некоторых системах или устанавливающего zip systm к окнам вместо Unix. Таким образом, Ваши непоследовательные результаты могут означать, что ничто не изменилось.

Таким образом, можно абсолютно не повезти.

1
ответ дан 7 December 2019 в 12:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: