What you are looking for is called an image classifier - these are very advanced AI projects that require lots of training and as Google recently and notoriously found tend to be error prone.
You can potentially build your own using python, OpenCV and SciKit-Learn and it will be callable from the command line and should do exactly what you need but expect that it will take considerable time to build and train and it will still give some false results - both positive and negative - e.g. was that snow or a sheet of paper.
It will probably be quicker, if less satisfying, to run through your images, in batches, with one of the GUI image cataloguing tools applying the tags that you are interested in. Some insert the tags into the EXIF information of the actual image itself, which can then be searched for from the command line using ExifTool, while others store the information about the images in some sort of database some of which are directly accessible from the command line, which is which would be the subject for another question.