Welcome, guest | Sign In | My Account | Store | Cart
import os
import stat
def set_executable(top):
    def set_exec(name):
        print "Setting exec for '%s'" % name
        mode = os.stat(name).st_mode
        os.chmod(name, mode | stat.S_IEXEC)
    def unset_exec(name):
        print "Unsetting exec for '%s'" % name
        mode = os.stat(name).st_mode
        os.chmod(name, mode ^ stat.S_IEXEC)
    for root, dirs, files in os.walk(top):
        for name in files:
            complete_name = os.path.join(root, name)
            f = open(complete_name, 'r')
            header = f.read(4)
            f.close()
            if header[0:2] == '!#' or header[1:4] == 'ELF':
                set_exec(complete_name)
            else:
                unset_exec(complete_name)
        for name in dirs:
            complete_name = os.path.join(root, name)
            set_exec(complete_name)

History