Converter o conteúdo do arquivo para o formato URI de dados

Função bash simples para converter um arquivo para o formato URI de dados. (saídas para stdout)

datauri() {
local type=$(file -0 --mime-type "$1" | cut -f 2 -d ' ')
cat
<(printf "data:${type};base64,") <(base64 "$1")
}

Uso:

$ datauri /path/to/image.png > image.datauri
$ echo
"<img src="$(datauri /path/to/image.png)"">"" > image_tag.html
$ datauri
/path/to/image.png | pbcopy # Mac OS X clipboard