generate.sh 998 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #!/bin/bash
  2. BASE_URL="http://localhost:32400"
  3. IFS=$'\n'
  4. SECTION="${1}"
  5. if [ -z "${SECTION}" ] || [ $SECTION -lt 1 ] || [ $SECTION -gt 100 ]; then
  6. echo "Usage: `basename "${0}"` section_number" 1>&2
  7. exit 1
  8. fi
  9. SERIES="`curl --silent "${BASE_URL}/library/sections/${SECTION}/all" | \
  10. grep 'key="/library/metadata/[0-9]*/children"' | \
  11. sed 's%^.*key="\(/library/metadata/[0-9]*/children\)".*$%\1%'`"
  12. for i in $SERIES; do
  13. SEASONS="`curl --silent "${BASE_URL}${i}" | \
  14. grep 'key="/library/metadata/[0-9]*/children"' | \
  15. sed 's%^.*key="\(/library/metadata/[0-9]*/children\)".*$%\1%'`"
  16. for j in $SEASONS; do
  17. EPISODES="`curl --silent "${BASE_URL}${j}" | \
  18. grep '<Video ' | \
  19. sed 's%^.*ratingKey="\([0-9]*\)".*$%\1%'`"
  20. for k in $EPISODES; do
  21. if [ -z "${k}" ] || [ $k -lt 100 ]; then
  22. echo "Bad episode ID: ${k}" 1>&2
  23. continue
  24. fi
  25. '/Applications/Zach/Media/Plex Media Server.app/Contents/MacOS/Plex Media Scanner' \
  26. --generate --item "${k}"
  27. done
  28. done
  29. done
  30. exit 0