file title is an option present on mkvtoolnix (92.0 eyeglow on debian 12.11)
I could single open every file, remove the file title and save, but that’s gonna take ages. almost 100 files.
If you are talking about the mkv embedded title, try this:
find -type f -iname "*.mkv" | while read "i" ; do mkvpropedit "${i}" --edit info --set "title=" ; done
Just to be clear, this command will simply delete all the titles from all of the MKV files in that particular directory.
Current directory and all its subdirectories - to be exact :)
You can execute the find command only (with arguments, so until the pipe) to verify modified files beforehand.
I’ve been using some ancient java app called jmkvpropedit to do this.
Seems like it has a CLI. You can figure out how to do this action with a CLI command, then do something like
find -name *mkv -exec ...
to execute that command for all the files.Combine this with FFmpeg.
Why? mkvpropedit already does everything OP wants. No need to get ffmpeg involved.
Someone with more experience on sed or awk should chime in, but out of memory something like this (which MOST LIKELY WONT WORK, verify it before running it on anything important):
find -name *mkv -exec sed -e's/file=.*/file=' > {}.changed \;
That, at least in theory, reads every .mkv file recursively in a current working directory, finds lines that contain “file=<whatever><EOL>” and replace that with “file=<EOL>” and stores the output to <original filename>.changed.
I would be very hesitant to run sed on a bunch of files consisting primarily of highly compressed binary data.
Emacs Dired would be my goto here, though it’s cumbersome if you dont know the bindings.
kill-rectangle and multiple-cursors within Dired are immensely useful
Edit: Oh, I just understood you want to mass modify the files themselves. In which case
wgrep
is useful here within Emacs, for modifying multiple buffers.It essentially runs a grep command on a directory, collates all the results in a single buffer, lets you modify that buffer for all files, and then save in one go