위치 이동
현재 위치 확인
pwd
pwd뜻
터미널이 현재 작업 중인 폴더의 절대 경로를 출력합니다.
언제 쓰나
프로젝트 폴더 안에서 실행해야 하는 명령을 쓰기 전에 현재 위치를 확인할 때 사용합니다.
예시
pwd요청 예시
터미널이 현재 어느 폴더에 있는지 확인해줘.
프로그래밍
웹 프로젝트를 수정, 실행, 테스트, 디버깅할 때 자주 쓰는 터미널 명령어를 검색하고 용도와 주의점을 확인하는 가이드입니다.
33 개 명령어
위치 이동
pwd
pwd터미널이 현재 작업 중인 폴더의 절대 경로를 출력합니다.
프로젝트 폴더 안에서 실행해야 하는 명령을 쓰기 전에 현재 위치를 확인할 때 사용합니다.
pwd터미널이 현재 어느 폴더에 있는지 확인해줘.
위치 이동
ls
ls현재 폴더 안의 파일과 폴더 목록을 보여줍니다.
package.json, src, next.config.mjs 같은 예상 파일이 있는지 확인할 때 사용합니다.
ls현재 프로젝트 폴더의 파일 목록을 보여줘.
위치 이동
cd
cd ~/projects/my-web-app터미널의 작업 위치를 다른 폴더로 이동합니다.
npm run build처럼 프로젝트 폴더에서 실행해야 하는 명령 전에 사용합니다.
명령 자체가 맞아도 잘못된 폴더에서 실행하면 실패할 수 있습니다.
cd ~/projects/my-web-app명령을 실행하기 전에 프로젝트 폴더로 이동해줘.
위치 이동
clear
clear파일이나 명령 기록은 바꾸지 않고 보이는 터미널 출력만 정리합니다.
이전 출력이 많아 헷갈릴 때 새 명령을 다시 실행하기 전에 사용합니다.
clear빌드를 다시 실행하기 전에 터미널 화면을 정리해줘.
파일과 폴더
cat
cat package.json파일 내용을 터미널에 출력합니다.
package.json, 설정 파일, 짧은 텍스트 파일 내용을 빠르게 볼 때 사용합니다.
매우 큰 파일은 전부 출력하지 말고 sed, rg, pager 같은 방식을 쓰는 편이 낫습니다.
cat package.jsonpackage.json의 scripts를 보여줘.
파일과 폴더
sed
sed -n '1,120p' src/components/SiteHeader.tsx파일에서 선택한 줄 범위만 출력할 수 있습니다.
전체 파일을 열지 않고 필요한 코드 구간만 확인할 때 사용합니다.
sed -n '1,120p' src/components/SiteHeader.tsxSiteHeader.tsx의 처음 120줄을 보여줘.
파일과 폴더
mkdir
mkdir -p src/app/[locale]/reference/terminal-commands새 폴더를 만듭니다. -p 옵션은 필요한 상위 폴더도 만들고 이미 있어도 실패하지 않게 합니다.
새 페이지 폴더나 asset 폴더를 추가하기 전에 사용합니다.
mkdir -p src/app/[locale]/reference/terminal-commands터미널 명령어 페이지 라우트 폴더를 만들어줘.
파일과 폴더
cp
cp .env.example .env.local파일이나 폴더를 다른 위치로 복사합니다.
예시 설정 파일을 로컬 설정으로 만들거나 템플릿을 복제할 때 사용합니다.
대상 파일이 이미 있으면 덮어쓸 수 있습니다.
cp .env.example .env.local로컬 설정을 덮어쓰지 않는 경우에만 예시 env 파일을 복사해줘.
파일과 폴더
mv
mv old-name.ts new-name.ts파일이나 폴더를 이동하거나 같은 폴더 안에서는 이름을 변경합니다.
파일명, 라우트 폴더명, asset 위치를 바꿀 때 사용합니다.
라우트 폴더명을 바꾸면 URL도 바뀝니다.
mv old-name.ts new-name.ts이 파일 이름을 바꾸고 필요하면 import도 수정해줘.
안전 작업
rm
rm unused-file.ts파일을 삭제합니다. -r 옵션을 붙이면 폴더를 재귀적으로 삭제할 수 있습니다.
파일을 프로젝트에서 의도적으로 제거할 때만 사용합니다.
rm은 파괴적입니다. 실행 전에 경로를 반드시 확인해야 합니다.
rm unused-file.ts이 파일을 삭제하기 전에 무엇이 제거되는지 설명해줘.
검색과 확인
rg
rg -n "errorMessageGuide" src여러 파일에서 텍스트를 빠르게 검색합니다.
수정 전에 import, 컴포넌트, slug, CSS class, 예전 이름을 찾을 때 사용합니다.
rg -n "errorMessageGuide" src이 컴포넌트가 어디서 import되는지 검색해줘.
검색과 확인
rg --files
rg --files src/app일반적인 ignore 규칙을 따르면서 파일 경로를 빠르게 나열합니다.
빌드 결과물을 훑지 않고 page 파일, 컴포넌트, lib 파일을 찾을 때 사용합니다.
rg --files src/appsrc/app 아래 참고 페이지 파일을 나열해줘.
검색과 확인
find
find src -name 'page.tsx'파일 시스템에서 경로, 이름, 파일 속성 기준으로 찾습니다.
파일 내용이 아니라 파일명 패턴으로 찾을 때 사용합니다.
find src -name 'page.tsx'모든 page.tsx 라우트 파일을 찾아줘.
검색과 확인
wc
wc -l src/lib/terminal-commands.ts줄 수, 단어 수, 바이트 수를 셉니다.
파일 크기를 가늠하거나 검색 결과 수를 셀 때 사용합니다.
wc -l src/lib/terminal-commands.ts이 데이터 파일이 몇 줄인지 세어줘.
패키지
npm install
npm installpackage.json과 package-lock.json에 적힌 패키지를 설치합니다.
프로젝트를 clone한 뒤나 의존성이 없을 때 사용합니다.
의존성 버전 해석에 따라 package-lock.json이 바뀔 수 있습니다.
npm installnode_modules가 없을 때만 의존성을 설치해줘.
개발 서버
npm run dev
npm run dev프로젝트의 로컬 개발 서버 스크립트를 실행합니다.
수정 중 브라우저에서 페이지를 확인할 때 사용합니다.
개발 서버는 중지하기 전까지 터미널 세션을 계속 사용합니다.
npm run dev개발 서버를 실행하고 로컬 URL을 알려줘.
패키지
npm run build
npm run build프로덕션 빌드 스크립트를 실행해 컴파일, 라우트, 타입 문제를 많이 잡아냅니다.
배포 전이나 새 페이지 추가 후 확인할 때 사용합니다.
npm run build프로덕션 빌드를 실행하고 경고나 실패를 요약해줘.
패키지
npm run lint
npm run lint프로젝트의 lint 스크립트를 실행해 스타일과 정적 코드 문제를 찾습니다.
빌드 전에 빠르게 문제를 확인하고 싶을 때 사용합니다.
npm run lintlint를 실행하고 조치가 필요한 오류만 보여줘.
패키지
node -v
node -v설치된 Node.js 버전을 출력합니다.
프로젝트나 의존성이 특정 Node 버전을 요구할 때 확인합니다.
node -v이 경고를 설명하기 전에 Node.js 버전을 확인해줘.
패키지
npx
npx next info설치된 또는 임시로 내려받은 npm 패키지의 명령을 실행합니다.
package script가 없는 일회성 도구 명령을 실행할 때 사용합니다.
설치되어 있지 않은 패키지는 npx가 네트워크에서 내려받을 수 있습니다.
npx next info이 npx 명령이 네트워크 접근을 필요로 하는지 설명해줘.
Git
git status
git status --short현재 브랜치와 수정, 스테이징, 미추적 파일을 보여줍니다.
수정, 커밋, pull, 브랜치 이동 전에 확인합니다.
git status --shortGit 상태를 확인하고 변경 파일을 요약해줘.
Git
git diff
git diff -- src/components/SiteHeader.tsx변경된 파일의 줄 단위 차이를 보여줍니다.
커밋 전에 정확히 무엇이 바뀌었는지 검토할 때 사용합니다.
git diff -- src/components/SiteHeader.tsx이번 작업의 diff를 검토해줘.
Git
git log
git log --oneline -5커밋 이력을 보여줍니다.
최근 작업을 보거나 확인할 커밋을 찾을 때 사용합니다.
git log --oneline -5최근 커밋 5개를 보여줘.
Git
git add
git add src/lib/terminal-commands.ts다음 커밋에 포함할 변경사항을 선택합니다.
커밋 범위를 명확히 하려면 파일 경로를 지정합니다.
git add src/lib/terminal-commands.ts터미널 명령어 페이지 관련 파일만 스테이징해줘.
Git
git commit
git commit -m "Add terminal command reference"스테이징된 변경사항을 Git 이력에 기록합니다.
스테이징된 변경을 검토한 뒤 사용합니다.
git commit -m "Add terminal command reference"스테이징된 변경을 명확한 메시지로 커밋해줘.
개발 서버
Ctrl+C
Press Ctrl+C in the dev server terminal터미널에서 실행 중인 명령을 중단합니다.
로컬 개발 서버를 끄거나 포트를 바꾸기 전에 사용합니다.
명령이 실행 중인 터미널 세션에서 눌러야 합니다.
Press Ctrl+C in the dev server terminal실행 중인 개발 서버를 꺼줘.
개발 서버
lsof
lsof -i :3001어떤 프로세스가 특정 포트를 사용 중인지 확인할 수 있습니다.
개발 서버가 EADDRINUSE로 실패할 때 사용합니다.
lsof -i :30013001 포트를 어떤 프로세스가 쓰는지 찾아줘.
개발 서버
ps
ps aux실행 중인 프로세스 목록을 보여줍니다.
실행 중인 개발 도구, 서버, 백그라운드 프로세스를 확인할 때 사용합니다.
ps auxNext.js 개발 서버가 아직 실행 중인지 확인해줘.
안전 작업
kill
kill 12345프로세스 ID를 지정해 프로세스를 종료하는 신호를 보냅니다.
일반 중단이 어렵고 서버가 계속 실행 중일 때 사용합니다.
잘못된 프로세스를 종료하지 않도록 PID를 정확히 확인해야 합니다.
kill 12345프로세스를 종료하기 전에 해당 PID가 무엇인지 보여줘.
네트워크
curl
curl -I http://localhost:3001/ko터미널에서 HTTP 요청을 보내고 응답을 출력합니다.
로컬 또는 배포 URL이 200, 404, 500, redirect 중 무엇으로 응답하는지 확인할 때 사용합니다.
curl -I http://localhost:3001/kocurl로 이 페이지가 200을 반환하는지 확인해줘.
네트워크
ping
ping 172.30.1.55호스트가 기본 네트워크 패킷에 응답하는지 확인합니다.
웹앱 상태 확인이 아니라 대략적인 네트워크 도달성 확인으로 사용합니다.
ping 172.30.1.55이 기기가 개발 머신 IP에 도달할 수 있는지 확인해줘.
검색과 확인
which
which node명령 이름을 실행할 때 어떤 실행 파일이 사용되는지 보여줍니다.
한 컴퓨터에 여러 Node, npm, 도구 버전이 있을 수 있을 때 확인합니다.
which node어떤 node 실행 파일이 사용되는지 확인해줘.
안전 작업
chmod
chmod +x script.sh파일의 읽기, 쓰기, 실행 권한을 변경합니다.
로컬 스크립트를 실행 가능하게 만들어야 할 때 사용합니다.
chmod -R 777 같은 넓은 권한 변경은 피해야 합니다.
chmod +x script.sh이 스크립트에 필요한 가장 안전한 권한 변경을 설명해줘.