/dev/blah

things i want to remember, things i want to share

Entries tagged “utils”

multi.py

written by tshirtman, on 4/11/11 6:02 PM.

Juste un petit script réalisé aujourd’hui pour une demande, permet d’executer une commande dans tous les sous dossiers d’un dossier…

#!/usr/bin/env python
import sys
import os
import commands

def usage():
    print "usage:"
    print sys.argv[0], "command"
    print """
    will execute the command in every direct subdirectory of the current
    directory, and print the result
    """

def main(command):
    for i in os.listdir('.'):
        if os.path.isdir(i):
            os.chdir(i)
            print commands.getoutput(' '.join(command))
            os.chdir('..')

if __name__ == '__main__':
    if len(sys.argv) < 2 or sys.argv[1] in ('-h', '--help'):
        usage()
    else:
        main(sys.argv[1:])

Ça peut servir, j’avais un alias zsh pour faire ça, mais y’a toujours des cas un peu foireux, sh c’est un peu juste pour ce genre de choses, donc bon, autant sortir python et faire un truc propre. Et puis bon, ça peut servir d’exemple d’utilisation de commands, et des fonctions d’os.