Ajustement du Shell Mongo#
Personnalisation du shell Mongo#
Configuration du fichier .mongorc.js#
- Créer un fichier .mongorc.js dans le répertoire utilisateur
~/.mongorc.js
sur Linux et macOS,%USERPROFILE%\.mongorc.js
sur Windows
- Editer et ajouter des variables et fonctions personnalisées
// activer le profilage par défaut
db.setProfilingLevel(1)
Modification de l'affichage et des couleurs#
Vous pouvez personnaliser l'affichage du shell Mongo en utilisant des fonctions d'affichage et des codes de couleurs.
- Utiliser la fonction
print()
pour afficher du texte - Utiliser
printjson()
pour un affichage formaté des objets JSON - Personnaliser les couleurs avec la bibliothèque colors.js ou des codes d'échappement ANSI
- Exemple :
print("\x1b[31mHello World\x1b[0m")
pour afficher du texte en rouge
Ajout de fonctions personnalisées#
- Définir des fonctions dans .mongorc.js pour automatiser les tâches récurrentes
// Exemple: une fonction pour rechercher les documents par nom function findByName(collection, name) { return db.getCollection(collection).find({ "name": name }); }
- Utiliser les fonctions personnalisées dans le shell Mongo
findByName("users", "John");
Utilisation de scripts pour automatiser les tâches#
Exécution de scripts JavaScript#
- Utiliser
load()
pour exécuter un script JS depuis le shell Mongo- Permet d'exécuter des fichiers JavaScript directement dans le shell Mongo
- Facilite l'automatisation des tâches répétitives et l'exécution de scripts complexes
// File: script.js
var users = [
{ name: "Alice", age: 30 },
{ name: "Bob", age: 25 },
{ name: "Charlie", age: 35 }
];
users.forEach(function(user) {
db.users.insert(user);
});
print("Utilisateurs insérés :");
db.users.find().forEach(printjson);
load("script.js")
Chargement de scripts à partir de fichiers externes#
- Inclure des scripts JS dans le fichier
.mongorc.js
avecload()
- Exemple :
load("/chemin/vers/script.js")
pour charger un script externe
Trucs et astuces pour une utilisation efficace du shell Mongo#
Raccourcis clavier#
- Utiliser les flèches haut/bas pour naviguer dans l'historique des commandes
- Utiliser Tab pour compléter automatiquement les noms de collections et de commandes
Commandes couramment utilisées#
show dbs
pour lister les bases de donnéesuse <nom_db>
pour sélectionner une base de donnéesshow collections
pour afficher les collections de la base de données sélectionnéedb.<collection>.find()
pour afficher les documents d'une collectiondb.<collection>.find().pretty()
pour un affichage formaté des documents