Menu Docs
Página inicial do Docs
/ /
Shell legado mongo

Configure o shell mongo shell

Aviso

O documento a seguir pertence ao mongo shell, incluído no download do MongoDB Server. Para obter informações sobre a nova shell MongoDB (),mongosh consulte a documentação mongosh.

Para entender as diferenças entre as duas conchas, consulte Comparação da shell mongo e mongosh.

Você pode modificar o conteúdo do prompt definindo a variável prompt no shell mongo . A variável prompt pode conter strings e código JavaScript. Se prompt contiver uma função que retorna uma string, o shell mongo poderá exibir informações dinâmicas em cada prompt.

Você pode adicionar a lógica do prompt no arquivo .mongorc.js para definir o prompt toda vez que iniciar o shell mongo .

Por exemplo, para criar um prompt de shell mongo com o número de operações emitidas na sessão atual, defina as seguintes variáveis no shell mongo :

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

O prompt seria então semelhante ao seguinte:

1>
2>
3>

Para criar um prompt de shell mongo na forma de <database>@<hostname>$, defina as seguintes variáveis:

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

O prompt seria então semelhante ao seguinte:

test@myHost1$

Para criar um prompt de shell mongo que contenha o tempo de atividade do sistema e o número de documentos no banco de banco de dados atual, defina a seguinte variável prompt no shell mongo :

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

O prompt seria então semelhante ao seguinte:

Uptime:5897 Documents:6 >

Você pode usar seu próprio editor no shell mongo definindo a variável de ambiente EDITOR antes de iniciar o shell mongo .

export EDITOR=vim
mongo

Uma vez no shell mongo , você pode editar com o editor especificado digitando edit <variable> ou edit <function>, como no exemplo a seguir:

  1. Defina uma função myFunction:

    function myFunction () { }
  2. Edite a função usando seu editor:

    edit myFunction

    O comando deve abrir a sessão de edição vim . Quando terminar as edições, salve e saia da sessão de edição vim .

  3. No shell mongo , digite myFunction para ver a definição da função:

    myFunction

    O resultado deve ser as alterações da sua edição salva:

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

Observação

Como o shell mongo interpreta o código editado em um editor externo, ele pode modificar o código em funções, dependendo do compilador JavaScript. Por exemplo, o shell mongo pode converter 1+1 em 2 ou remover comentários. As alterações reais afetam apenas a aparência do código e variam de acordo com a versão do JavaScript usada, mas não afetarão a semântica do código.

O método db.collection.find() é o método JavaScript para recuperar documentos de uma coleção. O método db.collection.find() retorna um cursor para os resultados; no entanto, na shell mongo , se o cursor retornado não for atribuído a uma variável usando a palavra-chave var , o cursor será automaticamente iterado até 20 vezes para imprimir até o primeiro 20 documentos que correspondem a query. O shell mongo solicitará a Type it para iterar mais 20 vezes.

Você pode definir o atributo DBQuery.shellBatchSize para alterar o número de documentos do valor padrão de 20, como no exemplo a seguir que o define como 10:

DBQuery.shellBatchSize = 10;

Voltar

Shell legado mongo

Nesta página