I have a strange problem with os.chdir... here is my script that I am using to edit the filenames of my music library:
#!/usr/bin/python from os import * chdir("/home/chainlynx/Desktop/Music") for artist in listdir(getcwd()): print "===ARTIST: "+artist chdir(artist) for album in listdir(getcwd()): print "---ALBUM: "+album print "CWD: " + getcwd() chdir(album) ######ERROR ON THIS LINE for string in listdir(album): print "-SONG "+ string if string[-3:] == "mp3": print "CONVERTING "+string+" to "+string[:string.index(".")]+".mp3" # string = string[:string.index(".")]+".mp3" The dummy file structure that I set up to run this: [EMAIL PROTECTED]:~/Desktop/Music$ find . . ./AAAAA ./AAAAA/Album1 ./AAAAA/Album2 ./AAAAA/Album3 ./AAAAA/Album3/song1.m4a.x.mp3 ./BBBBB ./CCCCC ./CCCCC/Albummmmm ./CCCCC/Albummmmm/asdfasdf.ogg ./CCCCC/Albummmmm/blah.m4a.wav.mp3 ./CCCCC/Albummmmm/good.mp3 The error I get: [EMAIL PROTECTED]:~/workspace/PyTest/src/pypack$ python __init__.py ===ARTIST: AAAAA ---ALBUM: Album1 CWD: /home/chainlynx/Desktop/Music/AAAAA Traceback (most recent call last): File "/home/chainlynx/workspace/PyTest/src/pypack/__init__.py", line 12, in ? for string in listdir(album): OSError: [Errno 2] No such file or directory: 'Album1' Does anyone know why this is choking? Clearly, because of the second chdir(), chdir() can accept variables like this... what am I doing wrong? Thanks in advance, Danny P.S. Bonus points: is there any way to bash shell script this on the command line instead (recursively)? -- http://mail.python.org/mailman/listinfo/python-list