Cómo hacer una consulta comlex MongoDB con Powershell

Necesito recuperar datos de mongoDB usando Powershell. Digamos que tengo la colección db.orders y necesito recuperar solo los pedidos creados durante la semana pasada y recuperar solo columnas específicas, por ejemplo, _id, status, createdAt fields.

Esquema de recogida de pedidos

{
 "_id": ObjectId("56cf9bab78e9fd46ec557d69"),
 "status" : "ordered",
  ...
 "total": 343,
 "createdAt": ISODate("2016-01-15T17:29:09.342Z")
}

Puedo consultarlo en mongo shell como este

db.orders.find({ 
  "createdAt" : { 
    $lt: new Date(), 
    $gte: new Date(new Date().setDate(new Date().getDate()-7))
  }   
}, {_id: 1, status: 1, createdAt: 1 })

Pero necesito hacerlo en Powershell, aquí está mi script de Powershell con una consulta simple que extrae exactamente creado en la fecha ... no rango de fechas

$mongoDbDriverPath = "C:\mongodb\bin"
$dbName = "Orders"
$collectionName = "orders"
Add-Type -Path "$($mongoDbDriverPath)\MongoDB.Bson.dll"
Add-Type -Path "$($mongoDbDriverPath)\MongoDB.Driver.dll"
$db =[MongoDB.Driver.MongoDatabase]::Create("mongodb://localhost:27017/$($dbName)")
$collection = $db[$collectionName]

$query = [MongoDB.Driver.Builders.Query]::EQ("createdAt","2016-01-15T17:29:09.342Z")

$results = $collection.find($query)

En la API de MongoDB .NET Driver, no puedo hacer consultas complejas o al menos no sé cómo. Puedo consultar de acuerdo con una columna específica, pero no haciendo una compleja y no puedo limitar la salida para algunos campos.

Por favor avise si alguien sabe cómo hacerlo. Nota: no es un proyecto .Net, solo usa el controlador .net mongoDB, pero se ejecuta en Powershell.

Respuestas a la pregunta(1)

Su respuesta a la pregunta