you can do this with the BlogsManager API. Create a new page like CopyBlogPosts.aspx and put something like this in the code behind:
sender, EventArgs e)
// retrieve manager
var blogMgr = BlogsManager.GetManager();
// retreive blogs
var oldBlog = blogMgr.GetBlogs().SingleOrDefault(b => b.Title ==
"Test Blog 1"
var newBlog = blogMgr.GetBlogs().SingleOrDefault(b => b.Title ==
"Test Blog 2"
// parse through old posts, only get published ones (avoids duplicates)
oldBlog.BlogPosts.Where(p => p.Status == Telerik.Sitefinity.GenericContent.Model.ContentLifecycleStatus.Live))
// create new post
var newBlogPost = blogMgr.CreateBlogPost();
// copy properties
newBlogPost.Parent = newBlog;
newBlogPost.Title = oldBlogPost.Title;
newBlogPost.UrlName = oldBlogPost.UrlName;
// add post to new blog
Build the website and visit that page. It should execute, copying all the posts from one blog to the other. Of course this example omits checking permissions and is very basic but should give you an idea of how you can implement this.
Of course I highly recommend you backup as always to be safe, and only run this locally then push the finished site out live.
I hope this was helpful!