
nest g mo / co / s 세 명령을 하나의 Shell Script로 묶으면 한 번에 생성할 수 있습니다./usr/local/bin에 복사해 전역 명령으로 사용합니다.NestJS는 CLI로 모듈, 컨트롤러, 서비스를 생성할 수 있습니다. 다만 기본적으로 각 명령어를 개별로 실행해야 합니다. 같은 모듈 이름을 세 번 입력하는 작업이 반복되면 번거롭습니다.
이 글에서는 Shell Script로 세 명령을 묶어 한 번에 파일을 생성하는 방법을 소개합니다.
Shell Script는 여러 명령어를 파일에 저장해 일괄 실행하는 스크립트입니다. Linux와 Mac 환경에서 주로 사용하며, 반복 작업을 자동화하는 데 유용합니다.
NestJS 프로젝트에서 Shell Script를 쓰면 모듈, 컨트롤러, 서비스 파일을 한 번에 생성할 수 있어 생산성이 올라갑니다.
다음은 create-module.sh라는 이름으로 저장할 Shell Script 예제입니다.
#!/bin/bash # 모듈명이 입력되지 않았을 때의 처리 if [ -z "$1" ]; then echo "Usage: $0 <module-name>" exit 1 fi MODULE_NAME=$1 # 모듈, 컨트롤러, 서비스 생성 nest g mo $MODULE_NAME nest g co $MODULE_NAME nest g s $MODULE_NAME echo "Module, Controller, and Service for '$MODULE_NAME' created successfully!"
프로젝트 루트 디렉터리에 create-module.sh 파일로 저장합니다.
저장 후 실행 권한을 부여합니다.
chmod +x create-module.sh
저장한 스크립트는 다음 명령어로 실행합니다.
./create-module.sh <module-name>
users라는 이름의 모듈, 컨트롤러, 서비스를 생성하려면 다음과 같이 실행합니다.
./create-module.sh users
스크립트 실행 후 src/users/ 디렉터리에 다음 파일들이 생성됩니다.
src/users/ ├── users.controller.ts ├── users.controller.spec.ts ├── users.module.ts └── users.service.ts
자주 사용한다면 스크립트를 전역 명령으로 설정하면 더 편리합니다.
다음 명령어로 스크립트를 /usr/local/bin 디렉터리에 복사합니다.
sudo cp create-module.sh /usr/local/bin/create-module
이제 어느 디렉터리에서든 다음 명령어로 실행할 수 있습니다.
create-module users
Windows 환경에서는 Shell Script 대신 PowerShell 스크립트가 적합합니다.
실행 권한이 없으면 chmod +x 명령어로 권한을 부여해야 합니다.
스크립트 실행 전에 NestJS CLI가 설치되어 있어야 합니다.
npm install -g @nestjs/cli
Shell Script로 NestJS의 반복적인 파일 생성을 자동화하면 개발 속도를 크게 높일 수 있습니다.