#!/bin/bash TEMPFILENAME=~/deleteme.tmp for filename in `find . -name '*.[ch]*'` ; do { sed ' s/SigC::Signal./sigc::signal/g; ' < $filename > $TEMPFILENAME && ( diff -q $TEMPFILENAME $filename || cp $TEMPFILENAME $filename ) } ; done