Pythonで再帰的にディレクトリを作るScript

バックアップスクリプトをテストするために下のようなディレクトリ構造を手打ちで作っていたのですが、

/tmp/BACKUP

-- BACKUP1
-- BACKUP1-1
-- BACKUP1-2
-- BACKUP1-3
-- BACKUP1-4
`-- spam_file1.txt
-- BACKUP2
-- BACKUP2-1
-- BACKUP2-2
-- BACKUP2-3
-- BACKUP2-4
`-- spam_file2.txt
-- BACKUP3
-- BACKUP3-1
-- BACKUP3-2
-- BACKUP3-3
-- BACKUP3-4
`-- spam_file3.txt

`-- BACKUP4
|-- BACKUP4-1
|-- BACKUP4-2
|-- BACKUP4-3
|-- BACKUP4-4
`-- spam_file4.txt

何度も何度も手打ちするのもバカバカしくなってきたので、Pythonスクリプトで自動化することにしました。

#!/usr/bin/env python

import os

DESTINATION = "/tmp/BACKUP"
BASH_COMMAND = "tree " + DESTINATION

def main():
    if os.path.exists(DESTINATION):
        pass
    else:
        os.makedirs(DESTINATION)


    for i in range(1, 5):
        for j in range(1, 5):
            dir_name1 = os.path.join(DESTINATION, ("BACKUP" + str(i)))
            dir_name2 = os.path.join(dir_name1, ("BACKUP"+ str(i) + "-" +
                                                 str(j)))
            if not os.path.exists(dir_name1):
                os.makedirs(dir_name1)
                filename = os.path.join(dir_name1, ("spam_file" + str(i) +
                                                    ".txt"))
                if os.path.isfile(filename):
                    pass
                else:
                    new_file = open(filename, 'a')
                    new_file.close()

            if not os.path.exists(dir_name2):
                os.makedirs(dir_name2)

    os.system(BASH_COMMAND)

    print "Creating Test Data Has Been Successfully Completed"
    print ""

if __name__ == '__main__':
    main()

動作環境はUbuntuです。Windowsでは動きません。(確認してませんが)