Skip to content

Instantly share code, notes, and snippets.

@jhyland87
Last active June 25, 2018 19:05
Show Gist options
  • Save jhyland87/1cd1b0011e71a05381c96060a584aa98 to your computer and use it in GitHub Desktop.
Save jhyland87/1cd1b0011e71a05381c96060a584aa98 to your computer and use it in GitHub Desktop.
Assoc array associating a mime type to the appropriate file extension
# Assoc array associating a mime type to the appropriate file extension
# source: https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types
#
# JS To gather data from source:
# $('table.standard-table > tbody > tr').each(function(a,b){
# console.log('mime2ext["%s"]="%s"',
# $(b).find("td:eq(2) > code").text(),
# $(b).find("td:eq(0) > code").text().replace(/^\./, ''))
# })
declare -A mime2ext
mime2ext["text/plain"]="txt"
mime2ext["audio/aac"]="aac"
mime2ext["application/x-abiword"]="abw"
mime2ext["application/octet-stream"]="arc"
mime2ext["video/x-msvideo"]="avi"
mime2ext["application/vnd.amazon.ebook"]="azw"
mime2ext["application/octet-stream"]="bin"
mime2ext["image/bmp"]="bmp"
mime2ext["application/x-bzip"]="bz"
mime2ext["application/x-bzip2"]="bz2"
mime2ext["application/x-csh"]="csh"
mime2ext["text/css"]="css"
mime2ext["text/csv"]="csv"
mime2ext["application/msword"]="doc"
mime2ext["application/vnd.openxmlformats-officedocument.wordprocessingml.document"]="docx"
mime2ext["application/vnd.ms-fontobject"]="eot"
mime2ext["application/epub+zip"]="epub"
mime2ext["application/ecmascript"]="es"
mime2ext["image/gif"]="gif"
mime2ext["text/html"]="html"
mime2ext["image/x-icon"]="ico"
mime2ext["text/calendar"]="ics"
mime2ext["application/java-archive"]="jar"
mime2ext["image/jpeg"]="jpeg.jpg"
mime2ext["application/javascript"]="js"
mime2ext["application/json"]="json"
mime2ext["audio/midiaudio/x-midi"]="mid.midi"
mime2ext["video/mpeg"]="mpeg"
mime2ext["application/vnd.apple.installer+xml"]="mpkg"
mime2ext["application/vnd.oasis.opendocument.presentation"]="odp"
mime2ext["application/vnd.oasis.opendocument.spreadsheet"]="ods"
mime2ext["application/vnd.oasis.opendocument.text"]="odt"
mime2ext["audio/ogg"]="oga"
mime2ext["video/ogg"]="ogv"
mime2ext["application/ogg"]="ogx"
mime2ext["font/otf"]="otf"
mime2ext["image/png"]="png"
mime2ext["application/pdf"]="pdf"
mime2ext["application/vnd.ms-powerpoint"]="ppt"
mime2ext["application/vnd.openxmlformats-officedocument.presentationml.presentation"]="pptx"
mime2ext["application/x-rar-compressed"]="rar"
mime2ext["application/rtf"]="rtf"
mime2ext["application/x-sh"]="sh"
mime2ext["image/svg+xml"]="svg"
mime2ext["application/x-shockwave-flash"]="swf"
mime2ext["application/x-tar"]="tar"
mime2ext["image/tiff"]="tif"
mime2ext["application/typescript"]="ts"
mime2ext["font/ttf"]="ttf"
mime2ext["application/vnd.visio"]="vsd"
mime2ext["audio/wav"]="wav"
mime2ext["audio/webm"]="weba"
mime2ext["video/webm"]="webm"
mime2ext["image/webp"]="webp"
mime2ext["font/woff"]="woff"
mime2ext["font/woff2"]="woff2"
mime2ext["application/xhtml+xml"]="xhtml"
mime2ext["application/vnd.ms-excel"]="xls"
mime2ext["application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"]="xlsx"
mime2ext["application/xml"]="xml"
mime2ext["application/vnd.mozilla.xul+xml"]="xul"
mime2ext["application/zip"]="zip"
mime2ext["video/3gppaudio/3gpp"]="3gp"
mime2ext["video/3gpp2audio/3gpp2"]="3g2"
mime2ext["application/x-7z-compressed"]="7z"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment