Use rename ...
rename -n 's/^([0-9]+\.[0-9]\.[0-9]+\.[0-9]+_[0-9]+_)([0-9]+)_([0-9]+)_([0-9]+)\.jpg/$1$2$3$4_TIMING\.jpg/' *
Com -n , isso gerará o que será feito sem fazer nenhuma alteração:
rename(10.3.100.179_01_20161018_230014_5335.jpg, 10.3.100.179_01_201610182300145335_TIMING.jpg)
rename(10.3.100.179_01_20161018_231514_0814.jpg, 10.3.100.179_01_201610182315140814_TIMING.jpg)
rename(10.3.100.179_01_20161018_233014_5706.jpg, 10.3.100.179_01_201610182330145706_TIMING.jpg)
rename(10.3.100.179_01_20161018_234514_0896.jpg, 10.3.100.179_01_201610182345140896_TIMING.jpg)
Se parecer correto, remova o -n
$ rename 's/^([0-9]+\.[0-9]\.[0-9]+\.[0-9]+_[0-9]+_)([0-9]+)_([0-9]+)_([0-9]+)\.jpg/$1$2$3$4_TIMING\.jpg/' *
$ ls
10.3.100.179_01_201610182300145335_TIMING.jpg 10.3.100.179_01_201610182330145706_TIMING.jpg
10.3.100.179_01_201610182315140814_TIMING.jpg 10.3.100.179_01_201610182345140896_TIMING.jpg
Explicando ...
-
s/something/something_else/ pesquisar e substituir
-
^ o começo do nome (ancoragem)
-
[0-9] qualquer número
-
+ um ou mais do caractere anterior
-
\. literal . (sem \ corresponde a qualquer caractere)
-
() para manter esta parte
-
$1$2$3$3 de referências anteriores às coisas correspondidas anteriormente e mantidas com ()
Nota: o * no final do comando está correspondendo a todos os arquivos visíveis no diretório atual. Use um globo mais adequado, se necessário.