kwin: привязка клавиш для перемещения клиента на другой рабочий стол

Это просто обновление ответа @anton, которое включает исправления @madmuffin (FileExistsError: [Errno 17] Файл существует и отсутствует модуль os import), исправление для python 3 (SyntaxError: Отсутствуют круглые скобки в вызове 'print') и исправление для отсутствующего errno импорта модуля (NameError: name 'errno ' не определен).

#! /usr/bin/env python

import os
import errno

# already created directories, walk works topdown, so a child dir
# never creates a directory if there is a parent dir with a file.
made_dirs = set()

for root, dir_names, file_names in os.walk('.'):
    for file_name in file_names:
        if '\\' not in file_name:
            continue
        alt_file_name = file_name.replace('\\', '/')
        if alt_file_name.startswith('/'):
            alt_file_name = alt_file_name[1:]  # cut of starting dir separator
        alt_dir_name, alt_base_name = alt_file_name.rsplit('/', 1)
        print('alt_dir', alt_dir_name)
        full_dir_name = os.path.join(root, alt_dir_name)
        if full_dir_name not in made_dirs:
            try:
                os.makedirs(full_dir_name)
            except OSError as exc:
                if exc.errno == errno.EEXIST and os.path.isdir(full_dir_name):
                    # the pass already exists and is a folder, let's just ignore it
                    pass
                else:
                    raise 
            made_dirs.add(full_dir_name)
        os.rename(os.path.join(root, file_name),
                  os.path.join(root, alt_file_name))
1
18.11.2015, 01:18
0 ответов

Теги

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