I have tried to write this little script that will batch rename file extensions. I am passing three arguments, the directory where the files are located, the current extension, and the new extension.
The error I am getting is
python batch_file_rename_2.py c:\craig .txt .html Traceback (most recent call last): File "batch_file_rename_2.py", line 13, in <module> os.rename(filename, newfile) WindowsError: [Error 2] The system cannot find the file specified The code is
import os import sys work_dir=sys.argv[1] old_ext=sys.argv[2] new_ext=sys.argv[3] files = os.listdir(work_dir) for filename in files: file_ext = os.path.splitext(filename)[1] if old_ext == file_ext: newfile = filename.replace(old_ext, new_ext) os.rename(filename, newfile)