导出linux用户权限,linux用户权限,要换linux服务器,由


要换linux服务器,由于每个用户在服务器上都有文件,而且文件权限不同。这些老数据想放到新服务器上就要命了,要记录每个文件的权限和用户组。

中间去了巧,没写python输出到文件夹,直接用linux管道输出,如我想输出权限到info文件可以写成

python filePermissions.py > info

然后给info加执行权限就行了

#获得文件或者文件夹权限 #! /usr/bin/env python#-*- coding: utf-8 -*-import os,statdef WalkDir(dir, file_callback=None):    for root, dirs, files in os.walk(dir):        for d in dirs:            #print d            if(not d[0] == "."):                file_path = os.path.join(root, d)                if file_callback: file_callback(file_path)    for root, dirs, files in os.walk(dir):        for f in files:            #print f            if(not f[0] == "."):                file_path = os.path.join(root, f)                if file_callback: file_callback(file_path)def LogFile(file):    try:        fileStats = os.stat(file)        #print file        #print fileStats.st_mode        #print oct(stat.S_IMODE(fileStats.st_mode))        #print fileStats.st_uid        #print fileStats.st_gid        fileInfo = 'chmod ' +  oct(stat.S_IMODE(fileStats.st_mode)) + ' ' + file        print fileInfo    except:        passif __name__ == "__main__":    path = raw_input('')    WalkDir(path, LogFile)#获得用户和组信息#! /usr/bin/env python#-*- coding: utf-8 -*-import os,statdef WalkDir(dir, file_callback=None):    for root, dirs, files in os.walk(dir):        for d in dirs:            #print d            if(not d[0] == "."):                file_path = os.path.join(root, d)                if file_callback: file_callback(file_path)    for root, dirs, files in os.walk(dir):        for f in files:            #print f            if(not f[0] == "."):                file_path = os.path.join(root, f)                if file_callback: file_callback(file_path)def LogFile(file):    try:        fileStats = os.stat(file)        #print file        #print fileStats.st_mode        #print oct(stat.S_IMODE(fileStats.st_mode))        #print fileStats.st_uid        #print fileStats.st_gid        fileInfo = 'chown ' +  str(fileStats.st_uid) +':' + str(fileStats.st_gid) + ' ' + file        print fileInfo    except:        passif __name__ == "__main__":    path = raw_input('')    WalkDir(path, LogFile)#该片段来自于http://byrx.net

评论关闭