anden3 icon

directoryconverter.py

anden3 | PRO | 08/17/17 11:52:48 AM UTC | 0 ⭐ | 388 👁️ | Never ⏰ | []
Python |

2.95 KB

|

None

|

0 👍

/

0 👎

import os
 
from glob import glob
 
 
directories = glob("*/")
 
directory_map = {
    "@celle2": "1088396647",
    "@isladuala_a3": "1088396647",
    "@Jbad": "1088396647",
    "@lingor_a3": "1088396647",
    "@LYTHIUM": "1088396647",
    "@Napf Island A3": "1088396647",
    "@Schwemlitz": "1088396647",
    "@Thirsk": "1088396647",
    "@Bozcaada": "1088396647",
    "@abramia": "1088396647",
    "@3cb_baf_equipment": "893328083",
    "@3cb_baf_units": "893346105",
    "@3cb_baf_vehicles": "893349825",
    "@3cb_baf_weapons": "893339590",
    "@ace": "1088349154",
    "@ALiVE": "620260972",
    "@AresModAchiliesExpansion": "723217262",
    "@CBA": "450814997",
    "@CUP_Terrains_Core": "583496184",
    "@CUP_Terrains_CWA": "853743366",
    "@CUP_Terrains_Maps": "583544987",
    "@RHSAFRF": "843425103",
    "@RHSGREF": "843593391",
    "@RHSUSAF": "843577117",
    "@ShackTac User Interface": "",
    "@TFR": "620019431",
    "@Werthles' Headless Module": "510031102",
    "@burnes_challenger": "1088392903",
    "@BWMod": "1088392903",
    "": "1088392903",
    "@Cha_Lav25": "1088392903",
    "@EWK_HMMWV": "1088392903",
    "@FV510 Warrior": "1088392903",
    "@Hover Board": "1088392903",
    "@K_MNP": "1088392903",
    "@NIArsenal": "1088392903",
    "@NIArsenal_ACR": "1088392903",
    "@Project OPFOR": "1088392903",
    "@tf47_launchers": "1088392903",
    "@TacticalBeards": "1088392903",
    "@US Military Mod": "1088392903",
    "@Advanced_Rappeling": "1088392903",
    "@Advanced_Towing": "1088392903",
    "@BackpackOnChest": "1088392903"
}
 
 
def movetree(src, dst, symlinks=False, ignore=None):
    names = os.listdir(src)
 
    if ignore is not None:
        ignored_names = ignore(src, names)
    else:
        ignored_names = set()
 
    try:
        os.makedirs(dst)
    except OSError as exc:
        # XXX - this is pretty ugly
        if "file already exists" in exc.strerror:  # Windows
            pass
        elif "File exists" in exc.strerror:  # Linux
            pass
        else:
            raise
 
    for name in names:
        if name in ignored_names:
            continue
 
        src_name = os.path.join(src, name)
        dst_name = os.path.join(dst, name)
 
        if os.path.isfile(dst_name):
            os.remove(src_name)
            continue
 
        try:
            if symlinks and os.path.islink(src_name):
                link_to = os.readlink(src_name)
                os.symlink(link_to, dst_name)
                os.remove(src_name)
 
            elif os.path.isdir(src_name):
                movetree(src_name, dst_name, symlinks, ignore)
 
            else:
                os.rename(src_name, dst_name)
 
        except (IOError, os.error) as why:
            print(src, dst, str(why))
 
    os.rmdir(src)
 
for directory in directories:
    dir_name = directory[:-1]
 
    if directory_map.get(dir_name):
        movetree(directory, directory_map.get(dir_name))

Comments