findOne() leads to pretty-print json object.

find() leads to jarbled json object.

How do i make find() just like findOne(), if this involves display within the mongo spend?

If you're scripting using javascript, you should use dcrosta's answer. But when you need to pretty print on the mongo interactive spend, you need to append pretty() for your find() queries.

eg : db.yourcollection.find().pretty()

The cursor object came back by find() supports forEach(), to help you use:

db.foo.find().forEach(printjson)

However observe that, unlike the default creation of find() which shows the very first 10 objects then allows you select whether or not to continue iterating or otherwise, forEach() will iterate the whole result set. Thus in case your query returns many results, this might require sometime and might not be terribly useful. limit() is the friend here.