file="B1_Site4_5aT4ZNHN691AQSB6B65_KYEC_SLT_2013-11-24-00-30_935985e7_100m_PASS1.tar"
com o GNU grep
quando construído com suporte a PCRE (e com zsh
ou versões recentes de ksh93
ou bash
para <<<
):
grep -oP '(?<=Z).{6}' <<< "$file" > file
com ksh93
, bash
ou versões recentes de zsh
:
tmp=${file#*Z} # remove chars up to the first Z
echo "${tmp:0:6}" > file
Apenas por diversão, awk
awk -F Z '{print substr($2, 1, 6)}' <<< "$file"