El mongosh La consola está orientada a líneas. Sin embargo, también puedes usar un editor para trabajar con funciones multilínea. Hay dos opciones:
Utilice el comando
editcon un editor externo.Utiliza el comando
.editor, un editor con funcionalidad incorporada.
Uso de un editor externo
El mongosh edit comando funciona con un editor externo. Puede configurar un editor externo en el shell que ejecuta mongosh o mongosh desde.
Si los editores están configurados en ambas ubicaciones, el editor configurado en tendrá mongosh prioridad.
Para configurar un editor dentro de,mongosh utilice el comando config.set().
config.set( "editor", "vi" )
Consulte la configuración del editor externo para obtener más ejemplos.
Puedes utilizar edit de tres maneras:
Iniciar una nueva sesión de edición
Introduce edit por sí solo para iniciar una nueva sesión de edición.
edit
Si inicia una sesión de edición sin argumentos, el editor se abre con la última edición cargada. Consulte el ejemplo"Editar un comando".
Editar una variable
Si existe un argumento en el espacio de nombres de la consola, puedes usar edit para actualizarlo.
var albums = [ ]; edit albums
La variable
albumsse establece en la primera línea.La segunda línea abre el editor externo para editar el valor de
albums.
Editar una declaración
Para editar una declaración en el editor externo, invoque edit con una declaración db.collection.insertMany() como.
edit db.digits.insertMany( [] )
Después de editar db.music.insertMany( [] ) y salir del editor externo, la consola podría verse mongosh así:
prompt> db.digits.insertMany([{ "zero": 0 }, { "one": 1 }, { "two": 2 }])
Cuando cierras el editor externo, la instrucción se copia en la línea de entrada de la consola, lista para ejecutarse. No se ejecuta automáticamente. Presiona <enter> para ejecutar la instrucción o <ctrl> + c para cancelarla.
Uso del editor integrado
El comando .editor proporciona capacidades básicas de edición de múltiples líneas.
El editor no guarda código. Al cerrar el editor integrado, las modificaciones se cargan en el ámbito global. Si la modificación invoca funciones o comandos, estos se ejecutarán al cerrar el editor.
Para iniciar el editor integrado:
.editor
Introduzca <ctrl> + d para salir y ejecutar su función.
Ejemplos
Configurar el editor externo
Si la EDITOR variable de entorno está configurada en el shell que ejecuta,mongosh el edit comando utilizará ese editor.
Si la mongosh editor propiedad también está configurada, usará ese programa en su lugar. mongosh La editor propiedad anula la EDITOR variable de entorno.
Establecer la EDITOR variable de entorno
La variable de entorno debe configurarse antes de mongosh iniciar.
Establezca una variable de entorno en bash o zsh:
export EDITOR=vi
El vi editor se abrirá cuando ejecute edit en la mongosh consola.
Nota
También puede establecer variables de entorno mongosh desde process.env.<VARIABLE> usando.
Establezca la variable de entorno EDITOR mongosh desde:
process.env.EDITOR = 'nano'
La variable de entorno solo se actualiza para el actual. La mongosh mongosh actualización no persiste al salir de.
Establecer la editor propiedad
Para establecer nano como editor desde,mongosh utilice el comando config.set().
config.set( "editor", "nano" )
El nano editor se abrirá cuando ejecute edit en la mongosh consola.
Nota
mongosh intentará usar el programa configurado. Un programa como less funcionará. Otros programas,grep como, podrían fallar o tener resultados inesperados.
Edición de un comando
Utilice edit para iniciar una sesión de edición. Si el editor ya se usó en la sesión de consola actual, se abrirá la última edición.
La siguiente declaración tiene un error de sintaxis. En la línea resaltada falta una coma:
// WARNING: This code contains an error db.users.insertMany( [ { "name": "Joey", "group": "sales" } { "name": "Marie", "group": "sales" }, { "name": "Elton", "group": "accounting" }, { "name": "Paola", "group": "marketing" } ] )
Para configurar el ejemplo:
Copia el código de ejemplo.
Introduzca
editpara iniciar una sesión de edición.Pegue el código de ejemplo en el editor.
Salir del editor.
Presione
enter.
Al salir del editor, copia el código de ejemplo a la línea de comando. devuelve un error cuando se ejecuta elmongosh código.
Para recargar el código de ejemplo, ingrese edit sin ningún argumento.
// WARNING: This code contains an error db.users.insertMany([{ "name": "Joey", "group": "sales" } { "name": "Marie", "group": "sales" }, { "name": "Elton", "group": "accounting" }, { "name": "Paola", "group": "marketing" } ])
El código se ha reformateado para facilitar su edición. En este caso, la falta de una coma en la línea resaltada provoca que los documentos queden desalineados.
Usar Visual Studio como editor externo
Visual Studio requiere un parámetro especial para funcionar como editor externo. Use --wait con Visual Studio.
Establecer una variable de entorno:
export EDITOR="/usr/local/bin/code --wait"
También puedes configurar el editor con config.set(). Si Visual Studio está en tu,PATH mongosh abre y ejecuta:
config.set("editor", "code --wait")
Si usas Visual Studio, también puedes utilizar la MongoDB VS Code Extension.
Desactivar el editor externo
Desactivar la editor variable mongosh en:
config.set("editor", null)
Si el EDITOR entorno está configurado, desactívelo también. Desde,mongosh ejecute:
process.env.EDITOR = ''
Si deshabilita EDITOR con,process.env el cambio no se conservará al salir mongosh de. Para que el cambio persista, deshabilita EDITOR en tu shell.
Uso del editor integrado
Iniciar el editor:
.editor
mongosh Entra en modo editor. Introduce tu código:
// Entering editor mode (^D to finish, ^C to cancel) var albums = [ { "artist": "Beatles", "album": "Revolver" }, { "artist": "The Monkees", "album": "Head"} ] db.music.insertMany( albums )
Para salir del editor,
Presiona
<ctrl> + dpara salir y ejecutar tu funciónPresione
<ctrl> + cpara salir sin ejecutar su función
Los objetos declarados con .editor, como albums en este ejemplo, se añaden al ámbito global. Están disponibles tras el cierre de .editor.