def move(src, dst):
    if not isinstance(dst, Path):
        dst = local.path(dst)
    if isinstance(src, (tuple, list)):
        if not dst.exists():
            dst.mkdir()
        elif not dst.is_dir():
            raise ValueError("When using multiple sources, dst %r must be a directory" % (dst,))
        for src2 in src:
            move(src2, dst)
        return dst
    elif not isinstance(src, Path):
        src = local.path(src)

    if isinstance(src, LocalPath):
        if isinstance(dst, LocalPath):
            return src.move(dst)
        else:
            return _move(src, dst)
    elif isinstance(dst, LocalPath):
        return _move(src, dst)
    elif src.remote == dst.remote:
        return src.move(dst)
    else:
        return _move(src, dst)
Moves the source path onto the destination path; ``src`` and ``dst`` can be either
dataset/ETHPy150Open tomerfiliba/plumbum/plumbum/path/utils.py/move