Docs Menu
Docs Home
/ /
Mongo Shell heredado

Configurar el mongo Shell

Advertencia

El siguiente documento se refiere a la mongo Shell, incluido en la descarga del servidor MongoDB. Para obtener información sobre el nuevo Shell MongoDB (),mongosh consulte la documentación de Mongosh.

Para comprender las diferencias entre las dos capas, consulte Comparación de las mongo capas mongosh y.

Puede modificar el contenido del mensaje configurando la variable prompt en el shell.mongo La prompt variable puede contener tanto cadenas como código JavaScript. Si prompt contiene una función que devuelve una cadena, el mongo shell puede mostrar información dinámica en cada mensaje.

Puedes añadir la lógica del indicador en el archivo .mongorc.js para establecerlo cada vez que inicies el shell mongo.

Por ejemplo, para crear un indicador de shell con la cantidad de operaciones emitidas mongo mongo en la sesión actual, defina las siguientes variables en el shell:

cmdCount = 1;
prompt = function() {
return (cmdCount++) + "> ";
}

El mensaje entonces sería similar al siguiente:

1>
2>
3>

Para crear un mongo indicador de shell con el <database>@<hostname>$ formato, defina las siguientes variables:

host = db.serverStatus().host;
prompt = function() {
return db+"@"+host+"$ ";
}

El mensaje entonces sería similar al siguiente:

test@myHost1$

Para crear un mongo indicador de shell que contenga el tiempo de actividad del sistema y la cantidad de documentos en la base de datos actual, defina la siguiente prompt variable en el mongo shell:

prompt = function() {
return "Uptime:"+db.serverStatus().uptime+" Documents:"+db.stats().objects+" > ";
}

El mensaje entonces sería similar al siguiente:

Uptime:5897 Documents:6 >

Puede utilizar su propio editor en el shell mongo configurando la variable EDITOR de entorno antes de iniciar el mongo shell.

export EDITOR=vim
mongo

Una vez en el shell, puede editar con el editor especificado mongo escribiendo edit <variable> edit <function>o, como en el siguiente ejemplo:

  1. Define una función myFunction:

    function myFunction () { }
  2. Edite la función usando su editor:

    edit myFunction

    El comando debería abrir la sesión de edición vim. Al finalizar las modificaciones, guarde y salga de la sesión de edición vim.

  3. En el shell,mongo escriba myFunction para ver la definición de la función:

    myFunction

    El resultado debe ser los cambios de tu edición guardada:

    function myFunction() {
    print("This was edited");
    }

Nota

A medida que el shell interpreta el código editado en un editor externo, puede modificar mongo mongo el código 1+1 en 2 funciones, dependiendo del compilador de JavaScript. Por ejemplo, el shell puede convertir en o eliminar comentarios. Los cambios reales solo afectan la apariencia del código y varían según la versión de JavaScript utilizada, pero no afectan la semántica del código.

El método es el método de db.collection.find() JavaScript para recuperar documentos de una colección. El método db.collection.find() devuelve un cursor a los resultados; sin embargo, en el shell, si el cursor devuelto no está asignado a una variable mediante mongo la var palabra clave, se itera automáticamente hasta 20 veces para imprimir hasta los primeros 20 documentos que coincidan con la consulta. El shell mongo solicitará Type it a que itere otras 20 veces.

Puede establecer el atributo DBQuery.shellBatchSize para cambiar el número de documentos del valor por defecto de 20, como en el siguiente ejemplo en el que se establece en 10:

DBQuery.shellBatchSize = 10;

Volver

Mongo Shell heredado

En esta página