PowerShell 기초: 폴더 이동·파일 확인·명령 실행
3강. PowerShell 기초: 폴더 이동·파일 확인·명령 실행
1. 이번 강의에서 해결할 문제
명령은 맞는데 다른 폴더에서 실행해 파일을 찾지 못합니다. 현재 위치와 대상 파일을 먼저 확인하는 터미널 습관을 만듭니다.
2. 학습 목표
3. 핵심 개념
PowerShell의 현재 위치는 경로를 생략한 명령의 기준입니다. .은 현재 폴더, ..은 부모 폴더입니다. 공백이 있는 경로는 따옴표와 -LiteralPath로 안전하게 전달합니다.
명령은 보통 동사-명사 형태입니다. Get-Location은 위치를 읽고, Set-Location은 위치를 바꾸며, Get-ChildItem은 폴더의 항목을 읽습니다. 실행 전에는 현재 위치 → 대상 존재 → 실행될 명령 순서로 확인하면 “명령을 찾을 수 없음”과 “파일을 찾을 수 없음”을 구분할 수 있습니다.
| 표현 | 의미 | 현재 위치가 D:\Dev\environment-lab일 때 |
|---|---|---|
. | 현재 폴더 | D:\Dev\environment-lab |
.. | 부모 폴더 | D:\Dev |
.\notes\check.txt | 현재 위치 기준 상대 경로 | D:\Dev\environment-lab\notes\check.txt |
D:\Dev\environment-lab\notes\check.txt | 절대 경로 | 현재 위치와 무관하게 같은 파일 |
4. 단계별 실습
명령 목적: 전용 실습 폴더에 파일을 만들고 현재 위치 변화에 따라 상대 경로가 어떻게 해석되는지 확인합니다.
실행 전 상태: D:\Dev\environment-lab이 존재해야 합니다. D: 대신 C:를 선택했다면 실제 경로로 바꿉니다. Set-Location 뒤 Get-Location이 실습 폴더인지 먼저 확인합니다.
PowerShell · 실행 위치: D:\Dev\environment-lab
Get-Location
New-Item -ItemType Directory -Force -Path '.\notes'
New-Item -ItemType File -Force -Path '.\notes\check.txt'
Get-ChildItem -LiteralPath '.\notes' -Force
Test-Path -LiteralPath '.\notes\check.txt'
Set-Location -LiteralPath '.\notes'
Get-Location
Set-Location ..
예상 결과: 처음 위치는 D:\Dev\environment-lab, 중간 위치는 ...\notes입니다. 목록에는 check.txt, Test-Path 결과에는 True가 표시되고 마지막 위치는 다시 environment-lab입니다.
명령 도움말 확인:
Get-Help Get-ChildItem -Examples
Get-Command Get-ChildItem
5. 명령어와 설정이 동작하는 이유
PowerShell은 파일 시스템을 Drive처럼 다루고 현재 위치를 상대 경로의 시작점으로 사용합니다. Get-Command는 입력한 이름이 cmdlet, 함수, 별칭 또는 외부 실행 파일 중 무엇으로 해석되는지 보여 줍니다. Set-Location .\notes 뒤에는 기준 위치가 바뀌므로 같은 .\check.txt가 이제 파일을 가리키고, Set-Location ..은 부모 폴더로 돌아갑니다.
6. 자주 하는 실수와 해결법
7. 직접 실습
8. 이해 점검 질문 3개
9. 핵심 요약
10. 다음 강의 연결
현재 위치와 대상 파일을 확인하는 순서를 익혔습니다. 다음 강의에서는 명령 이름만 입력했을 때 PowerShell이 실행 파일을 찾는 PATH 검색 과정을 진단합니다.
PowerShell 기초: 폴더 이동·파일 확인·명령 실행 미니 퀴즈
선택 즉시 정답과 해설을 확인할 수 있습니다. 결과는 이 브라우저에만 저장됩니다.
학습을 마쳤나요?
직접 실습과 점검 질문까지 확인한 뒤 완료로 표시하세요.