| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- #!/bin/bash
- # Move into place if a directory is provided
- if [ -n "${1}" ]; then
- if [ -d "${1}" ]; then
- cd "${1}"
- else
- echo "Usage: ${0} [path]" 1>&2
- exit 1
- fi
- fi
- # Scan for media files
- for i in *.mp4 *.mkv *.m4v; do
- YTID="`echo "${i}" | sed 's%^S20[0-9][0-9]E[0-9]* - \(.*\)\.m[pk4][4v]%\1%'`"
- if [ -z "${YTID}" ] || [ "${YTID}" == "${i}" ]; then
- continue
- fi
- # Find related meta files
- META="${YTID}.meta"
- if [ -s "${META}" ]; then
- continue
- fi
- # Find the media file mtime
- DATE="`stat -c '%Y' "${i}"`"
- if [ -z "${DATE}" ]; then
- echo "Could not determine date for: ${i}" 1>&2
- continue
- fi
- # Add missing meta files
- echo "# Autogenerated" > "${META}"
- echo "date = ${DATE}" >> "${META}"
- touch -r "${i}" "${META}"
- done
- # Cleanup
- exit 0
|