Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

Utilice un editor para los comandos

La mongosh La consola está orientada a líneas. Sin embargo, también puedes utilizar un editor para trabajar con funciones multilínea. Hay dos opciones:

  • Utilice el comando edit con un editor externo.

  • Utiliza el comando .editor, un editor con funcionalidad incorporada.

El comando mongosh edit funciona con un editor externo. Puedes configurar un editor externo en el shell que ejecute mongosh o desde dentro de mongosh.

Si los editores están configurados en ambas ubicaciones, el editor configurado en tendrá mongosh prioridad.

Para configurar un editor dentro de mongosh, utiliza config.set(). comando.

config.set( "editor", "vi" )

Consulte la configuración del editor externo para obtener más ejemplos.

Puede usar edit de tres maneras:

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".

Si existe un argumento en el espacio de nombres de la consola, puedes usar edit para actualizarlo.

var albums = [ ];
edit albums
  • La variable albums se establece en la primera línea.

  • La segunda línea abre el editor externo para editar el valor de albums.

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 mongosh podría tener este aspecto:

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.

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 incorporado:

.editor

Introduce <ctrl> + d para salir y ejecutar tu función.

Vea Utilización del Editor de funcionalidad incorporada.

Si la EDITOR variable de entorno está configurada en el shell que ejecuta,mongosh el edit comando utilizará ese editor.

Si la propiedad mongosh editor también está configurada, mongosh utilizará ese programa en su lugar. La propiedad editor anula la variable de entorno EDITOR.

La variable de entorno debe configurarse antes de iniciar mongosh.

Configura 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 mongosh. La actualización no persiste cuando mongosh sale.

Para configurar nano como el editor desde mongosh, usa el config.set() comando.

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.

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 instrucción contiene un error de sintaxis. Falta una coma en la línea resaltada:

// 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:

  1. Copiar el código de ejemplo.

  2. Ingrese edit para iniciar una sesión de edición.

  3. Pegue el código de ejemplo en el editor.

  4. Salga del editor.

  5. Presione enter.

Cuando sales del editor, copia el código de ejemplo en la línea de comandos. mongosh devuelve un error cuando se ejecuta el código.

Para recargar el código de ejemplo, introduce 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 reformatea para facilitar su edición. En este caso la ausencia de una coma en la línea resaltada provoca que los documentos estén desalineados.

Visual Studio requiere un parámetro especial para funcionar como editor externo. Use --wait con Visual Studio.

Establece una variable de entorno:

export EDITOR="/usr/local/bin/code --wait"

También pueden configurar el editor con config.set(). Si Visual Studio está en su PATH, abra mongosh y ejecute:

config.set("editor", "code --wait")

Si usas Visual Studio, también puedes utilizar la MongoDB VS Code Extension.

Desactivar la variable editor en mongosh:

config.set("editor", null)

Si se ha configurado el entorno EDITOR, también se debe desactivarlo. Desde mongosh, ejecuta:

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.

Inicie el editor:

.editor

mongosh entra en modo editor. Ingresa 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> + d para salir y ejecutar tu función

  • Presione <ctrl> + c para salir sin ejecutar su función

Los objetos que se declaran usando .editor, como albums en este ejemplo, se agregan al ámbito global. Están disponibles tras el cierre de .editor.

Volver

Configurar

En esta página