using awk or bash to change the format

tenxun-glibc_code-x86-64-linux-20120713190049.root.tar.bz2

To

tenxun-glibc_code-x86-64-linux.root.tar.bz2

in a variable or a stream? with bash extglob you can do it like so

$ var='tenxun-glibc_code-x86-64-linux-20120713190049.root.tar.bz2'
$ shopt -s extglob
$ echo "${var/-+([[:digit:]])./.}"
tenxun-glibc_code-x86-64-linux.root.tar.bz2

I don't understand "/-" and "./." here

See Bash Reference Manual section "parameter expansion"
It is search and replace. ${var/old/new}