Eu consideraria usar uma linguagem que possa analisar o JSON e manipular os dados. Aqui está algum ruby (e shell)
$ cat data.json
{
"headers": {
"content-type": "application/octet-stream;\r\n\tname=\"I may have long file names - With lots of spaces.zip\"",
"content-transfer-encoding": "base64",
"content-disposition": "attachment;\r\n\tfilename=\"I may have long file names - With lots of spaces.zip\""
}
}
$ filename=$(ruby -rjson -e '
data = JSON.parse(File.read(ARGV.shift))
m = data["headers"]["content-disposition"].match(/filename=(.+)$/m)
filename = m[1].gsub(/^"|"$/,"")
puts filename
' data.json)
$ echo "$filename"
I may have long file names - With lots of spaces.zip