명령 프롬프트(CMD)는 윈도우에서 강력한 기능을 수행할 수 있는 도구입니다. 그러나 리눅스 및 Mac 사용자들이 흔히 사용하는 ls
명령어를 그대로 입력하면 ‘ls’은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다.**라는 오류가 발생합니다. 그렇다면 윈도우에서 ls
명령어를 어떻게 사용할 수 있을까요? 이번 글에서는 윈도우 CMD 명령어 ls 사용법 총정리를 통해 ls
대체 명령어와 활용 방법을 자세히 알아보겠습니다.
1. 윈도우 CMD에서 ls 명령어를 사용할 수 있을까?
윈도우 CMD(Command Prompt)에서는 기본적으로 ls
명령어가 지원되지 않습니다. ls
는 리눅스 및 MacOS에서 파일 목록을 출력하는 명령어로, 윈도우에서는 같은 기능을 수행하는 dir
명령어를 사용해야 합니다.
✅ ls 명령어와 dir 명령어 비교
OS | ls 명령어 | 대체 명령어 |
---|---|---|
Windows (CMD) | X | dir |
Windows (PowerShell) | X | Get-ChildItem (gci) |
Linux | O | ls |
MacOS | O | ls |
즉, 윈도우 CMD에서 ls
명령어를 사용하려면 대체 명령어(dir)를 활용하거나, **Git Bash 또는 Windows Subsystem for Linux(WSL)**을 설치해야 합니다.
2. 윈도우 CMD에서 ls 명령어 대체 방법
📌 1) dir
명령어 사용하기
윈도우에서 ls
와 같은 역할을 하는 가장 기본적인 명령어는 dir
입니다.
C:\Users\User> dir
위 명령어를 입력하면 현재 디렉터리의 파일 및 폴더 목록을 확인할 수 있습니다.
🔹 dir
옵션 사용법
옵션 | 설명 |
/w | 넓은 형식(가로 정렬)으로 표시 |
/a | 숨김 파일 및 시스템 파일 포함 |
/s | 하위 디렉터리까지 포함하여 출력 |
/b | 파일 이름만 출력 |
/o:n | 이름순 정렬 |
/o:-n | 이름 역순 정렬 |
예제:
C:\Users\User> dir /a /s
이렇게 하면 숨김 파일과 하위 폴더까지 출력됩니다.
📌 2) PowerShell에서 ls 명령어 사용하기
윈도우 PowerShell에서는 ls
명령어가 기본적으로 지원됩니다. 하지만 실제로는 Get-ChildItem
명령어의 별칭(Alias)일 뿐입니다.
PS C:\Users\User> ls
위 명령어를 실행하면 리눅스의 ls
처럼 파일 목록이 출력됩니다. 만약 더 자세한 정보를 원한다면 ls
대신 Get-ChildItem
을 사용할 수 있습니다.
PS C:\Users\User> Get-ChildItem -Force
🔹 PowerShell ls 옵션
명령어 | 설명 |
ls -Force | 숨김 파일 포함 |
ls -Recurse | 하위 폴더까지 포함 |
ls -Name | 파일 이름만 출력 |
ls -Filter *.txt | 특정 확장자 파일만 출력 |
📌 3) Git Bash 또는 WSL에서 ls 사용하기
윈도우에서 리눅스 환경을 일부 지원하는 Git Bash 또는 **Windows Subsystem for Linux(WSL)**을 설치하면 ls
명령어를 그대로 사용할 수 있습니다.
✅ Git Bash 설치 후 실행
$ ls
✅ WSL 설치 후 실행
$ ls -l
이렇게 하면 리눅스와 동일한 방식으로 파일 목록을 출력할 수 있습니다.
Q&A
Q1. CMD에서 ls 명령어를 사용할 수 있는 방법은 없나요?
CMD에서 기본적으로 ls
명령어는 지원되지 않지만, 다음과 같은 방법으로 사용할 수 있습니다.
- alias 설정하기 (CMD에서
ls
를dir
로 매핑)DOSKEY ls=dir
- CMD에서
ls
를 입력하면dir
이 실행되도록 설정됩니다. - 단, CMD를 닫으면 설정이 사라지므로 영구 적용하려면 배치 파일에 추가해야 합니다.
- CMD에서
- Git Bash 또는 WSL 설치
- Git Bash 또는 Windows Subsystem for Linux(WSL)를 설치하면
ls
명령어를 그대로 사용할 수 있습니다.
- Git Bash 또는 Windows Subsystem for Linux(WSL)를 설치하면
Q2. CMD의 dir과 PowerShell의 ls 중 어떤 것이 더 좋은가요?
둘 다 윈도우에서 파일 목록을 출력하는 기능을 하지만, PowerShell의 ls
(Get-ChildItem)가 기능적으로 더 강력합니다.
✅ dir (CMD)
- 단순한 파일 목록 출력에 적합
- 리눅스와 다르게 동작하여 일부 사용자에게 익숙하지 않을 수 있음
✅ ls (PowerShell)
- 다양한 옵션 지원 (예:
-Recurse
,-Force
등) - 스크립팅 및 자동화에 유리
- 리눅스
ls
와 유사한 방식으로 동작하여 사용자 친화적
결론: 간단한 파일 목록 조회라면 dir
, 고급 기능이 필요하다면 ls (PowerShell)
을 사용하는 것이 좋습니다.
Q3. CMD에서 파일을 정렬하여 출력하는 방법은?
CMD에서 파일을 정렬하는 방법은 dir
명령어의 /o
옵션을 활용하는 것입니다.
옵션 | 정렬 기준 |
/o:n | 이름순 정렬 |
/o:-n | 이름 역순 정렬 |
/o:s | 크기순 정렬 |
/o:d | 날짜순 정렬 |
예제:
C:\Users\User> dir /o:n
이렇게 하면 이름순으로 정렬된 파일 목록을 출력할 수 있습니다.
결론
윈도우 CMD 명령어 ls 사용법 총정리를 통해 ls
명령어를 대체할 수 있는 방법을 알아보았습니다. 기본적으로 CMD에서는 dir
을 사용해야 하지만, PowerShell에서는 ls (Get-ChildItem)
을 활용할 수 있습니다. 또한 Git Bash나 WSL을 설치하면 리눅스와 동일한 환경에서 ls
를 사용할 수도 있습니다.
윈도우 환경에서도 다양한 방법으로 ls
기능을 활용할 수 있으니, 자신의 사용 목적에 맞게 적절한 방법을 선택하세요.