A minimal command-line tool to remove metadata from images, videos, and audio files.
The script can either create cleaned copies of your files in a new directory or overwrite the original files in place.
[WARNING] Use the
--overwrite
flag with extreme caution. This option permanently modifies your original files. It is highly recommended to back up your files before using this feature, as the process is irreversible and could result in data loss if an error occurs.
- Overwrite Option: Choose between the default safe mode (copying to a new directory) or the high-risk overwrite mode.
- Verification: Automatically uses ExifTool to verify that metadata has been successfully stripped.
- Timestamp Reset: Resets file timestamps to the Unix epoch (1970-01-01)
- Recursive Processing: Can process files in a single directory or recursively through a folder.
You must have the following command-line tools installed and accessible in your system's PATH:
- ExifTool: https://exiftool.org/
- FFmpeg: https://ffmpeg.org/
This is the default and recommended way to use the script. It creates cleaned copies of your files in a specified output directory, leaving the original files untouched.
Process a single file:
python main.py --input /path/to/your/file.jpg --output /path/to/cleaned_files
Process an entire folder recursively:
python main.py --input /path/to/your/folder --output /path/to/cleaned_files
This mode modifies the original files. It is faster and uses less disk space but carries the risk of data loss.
Overwrite a single file:
python main.py --input /path/to/your/file.jpg --overwrite
Overwrite an entire folder recursively:
python main.py --input /path/to/your/folder --overwrite
Argument | Alias | Required | Description |
---|---|---|---|
--input |
-i |
Yes | The path to the input file or folder you want to process. |
--output |
-o |
Yes* | The path to the directory where cleaned files will be saved. |
--overwrite |
Yes* | Confirms that you want to overwrite the original files. |
* You must use either --output
or --overwrite
, but not both.