compare file recursively