#!/bin/bash IFS=" " for i in $( cat txt.txt ); do CONTAINSDATE=`echo $i | grep "pubdate"` if [ "$CONTAINSDATE" != "" ] then INPUTDATE=`echo $i | cut -d ">" -f 5 | cut -d "<" -f 1` FIXEDINPUTDATE=0$INPUTDATE OUTPUTDATE=`date -R -d $FIXEDINPUTDATE` echo $i | sed -e s/$INPUTDATE/$OUTPUTDATE/ else echo $i fi done