경고
다음 문서 MongoDB Server 다운로드 에 포함된 셸mongo 과 관련이 있습니다. 새로운 MongoDB Shell ()에 대한 자세한mongosh 내용은 mongosh 설명서를 참조하세요.
두 셸의 차이점을 이해하려면 mongo shell 과 mongosh 비교를 참조하세요.
프롬프트 사용자 지정
mongo shell 에서 prompt 변수를 설정하여 프롬프트의 내용을 수정할 수 있습니다. prompt 변수는 문자열과 JavaScript 코드를 모두 저장할 수 있습니다. prompt 에 string 을 반환하는 함수가 포함된 경우 mongo shell 은 각 프롬프트에 동적 정보를 표시할 수 있습니다.
.mongorc.js 파일 에 프롬프트 로직을 추가하여 mongo shell 을 시작할 때마다 프롬프트를 설정하다 수 있습니다.
작업 수를 표시하도록 프롬프트 사용자 지정
예를 예시, 현재 세션에서 실행된 작업 수로 mongo shell 프롬프트를 생성하려면 mongo shell 에서 다음 변수를 정의합니다.
cmdCount = 1; prompt = function() { return (cmdCount++) + "> "; }
그러면 프롬프트는 다음과 유사합니다.
1> 2> 3>
데이터베이스 및 호스트 이름 표시 프롬프트 사용자 지정
<database>@<hostname>$ 형식으로 mongo shell 프롬프트를 만들려면 다음 변수를 정의합니다.
host = db.serverStatus().host; prompt = function() { return db+"@"+host+"$ "; }
그러면 프롬프트는 다음과 유사합니다.
test@myHost1$
가동 시간 및 문서 수를 표시하도록 프롬프트 사용자 지정
mongo shell 시스템 가동 시간 과 현재 데이터베이스 의 문서 수를 포함하는 prompt 프롬프트를 만들려면 에서 다음 변수를 mongo shell 정의합니다.
prompt = function() { return "Uptime:"+db.serverStatus().uptime+" Documents:"+db.stats().objects+" > "; }
그러면 프롬프트는 다음과 유사합니다.
Uptime:5897 Documents:6 >
셸 에서 외부 편집기 사용 mongo shell
을 시작 하기 전에 환경 변수를 설정하여 EDITOR 에서 mongo shell 자체 편집기를 사용할 수 있습니다.mongo shell
export EDITOR=vim mongo
mongo shell 에 들어가면 다음 예시 와 같이 edit <variable> 또는 edit <function>를 입력하여 지정된 편집기로 편집할 수 있습니다.
함수
myFunction를 정의합니다.function myFunction () { } 편집기를 사용하여 함수를 편집합니다.
edit myFunction 이 명령은
vim편집 세션을 열어야 합니다. 편집이 완료되면vim편집 세션을 저장하고 종료합니다.mongoshell 에서myFunction을 입력하여 함수 정의를 확인합니다.myFunction 결과는 저장된 편집 내용의 변경 사항입니다.
function myFunction() { print("This was edited"); }
셸 배치 크기변경 mongo shell
db.collection.find() 메서드는 컬렉션 에서 문서를 조회 하는 JavaScript 메서드입니다. db.collection.find() 메서드는 결과에 커서 를 반환합니다. 그러나 mongo shell 에서 반환된 커서 가 var 키워드를 사용하여 변수에 할당되지 않은 경우 커서 는 자동으로 최대 20 번 반복되어 일치하는 처음 20 개의 문서를 인쇄합니다. 쿼리. mongo shell 은 Type it 를 다시 20 번 반복하라는 메시지를 표시합니다.
DBQuery.shellBatchSize 속성을 설정하다 하여 기본값 인 20 에서 10 로 설정한 다음 예시 에서처럼 문서 수를 변경할 수 있습니다.
DBQuery.shellBatchSize = 10;