O mais simples: você pode usar:
touch -r Referencefile THEFILE
para dar ao THEFILE o mesmo tempo que o Referencefile então:
rm -f Referencefile
echo > Referencefile #to set the creation time
#...do your captures here, then concatenate into THEFILE ....
echo >> Referencefile #to set the modification time
touch -r Referencefile THEFILE
Mas se você preferir ter uma maneira mais flexível:
Para ter uma maneira "confiável" de obter o tempo de um arquivo em um formato "portátil", não dependendo se o arquivo foi alterado pela última vez em seis meses, etc:
tar cf - file | tar tvf -
para que você possa fazer isso para ter um tempo adequado para o toque:
gettouchdate () {
tar cf - "$1" | tar tvf - | tr ':' ' ' \
| awk '{mm=sprintf("%02d",(match("JanFebMarAprMayJunJulAugSepOctNovDec",$5)+2)/3) ;
print $10 mm $6 $7 $8 $9 ;}'
}
#firstdate=$(gettouchdate "/path/to/FIRSTFILE")
lastdate=$(gettouchdate "/path/to/LASTFILE")
touch -r /path/to/FIRSTFILE THEFILE
touch -m "$lastdate" THEFILE