def mkdir(folder): par = parent(folder) if not exists(par): mkdir(par) if fsremote.is_remote(folder): return fsremote.mkdir(folder) else: return os.mkdir(folder)
def concatenate(file1, file2): # cat file2 >> file1 if fsremote.is_remote(file1): fsremote.concatenate(file1, file2) else: f = open(file1, 'ab') f.write(open(file2).read()) f.close() os.remove(file2)
def remove(filename): if fsremote.is_remote(filename): return fsremote.remove(filename) else: return os.remove(filename)
def move(source, target): if fsremote.is_remote(source) or fsremote.is_remote(target): return fsremote.move(source, target) else: return shutil.move(source, target)
def copy(source, target): if fsremote.is_remote(source) or fsremote.is_remote(target): return fsremote.copy(source, target) else: return shutil.copy(source, target)
def readlink(link): if fsremote.is_remote(link): return fsremote.readlink(link) else: return os.readlink(link)
def islink(thing): if fsremote.is_remote(thing): return fsremote.islink(thing) else: return os.path.islink(thing)
def md5sum(filename, end=None): if fsremote.is_remote(filename): return fsremote.md5sum(filename, end) else: from md5 import md5sum as localmd5sum return localmd5sum(filename, end)
def getsize(filename): if fsremote.is_remote(filename): return fsremote.getsize(filename) else: return os.path.getsize(filename)
def exists(thing): if fsremote.is_remote(thing): return fsremote.exists(thing) else: return os.path.exists(thing)
def rmdir(folder): if fsremote.is_remote(folder): return fsremote.rmdir(folder) else: return os.rmdir(folder)
def listdir(folder): if fsremote.is_remote(folder): return fsremote.listdir(folder) else: return os.listdir(folder)
def truncate(filename, filesize): if fsremote.is_remote(filename): fsremote.truncate(filename, filesize) else: open(filename).truncate(filesize)