Использование awk split()
вместо FS
в случае, если оно используется для чего-то еще ::
$ awk '
BEGIN {
split("20200601.title.info.event.txt",a,".")
print a[1]
}'
title
Использование оператора bash s =~
:
$ [[ "20200601.title.info.event.txt" =~ \.[^.]*\. ]] && echo ${BASH_REMATCH[0]:1:-1}
title
Использование sed:
$ sed 's/^[^.]*.\|\..*//g' <<< "20200601.title.info.event.txt"
title
Во всех случаях вы можете сначала установить строку в переменную и использовать ее вместо строки.