
Bash에서 파일과 디렉토리 관련 명령어 튜토리얼
이 문서는 비어있는 디렉토리에서 시작하여 파일과 디렉토리를 생성하고, 삭제하는 과정을 단계별로 설명하는 일종의 튜토리얼임.
terminal에서 각 명령어를 입력하면서 결과를 확인하고 진행할 것.
0. 문자열 출력
2026.01.12 - [shell] - echo 와 printf
echo 와 printf
echoecho는 문자열이나 변수 값을 표준 출력(stdout)에 그대로 출력하는 shell built-in 명령어.입력한 말을그대로 다시 돌려주는 명령이라는 점에서 이름이 echo(메아리)임. 다음과 같이 문자열 또는 환
ds31x.tistory.com
1. 디렉토리 생성하기
# 새 디렉토리를 생성.
mkdir my_first_directory
# 생성한 디렉토리로 이동.
cd my_first_directory
mkdir 에서 -p 옵션을 붙일 경우,
필요한 상위 디렉터리를 함께 생성하며,
디렉터리가 이미 존재해도 오류를 발생시키지 않음
( idempotent ).
거의 관례적으로 같이 사용됨.
2. 파일 생성하기
# 빈 파일을 생성.
touch file1.txt
# 다른 방법으로도 파일을 생성할 수 있음.
echo "Hello, World!" > file2.txt
# 현재 디렉토리에 어떤 파일이 있는지 확인.
ls
2023.10.02 - [Linux] - [Bash] 입출력 목적지 변경하기 : Redirection Operation
[Bash] 입출력 목적지 변경하기 : Redirection Operation
stdout (표준출력, 1), sdtin(표준입력, 0), stderr(표준에러, 2)을 redirection하는 방법에 대한 문서서버에서 백그라운드로 명령어 수행시 출력이나 error 메시지 등을 stdout이 아닌 file에 남길 때 유용.redirec
ds31x.tistory.com
3. 서브 디렉토리 생성하기
# 서브 디렉토리를 생성.
mkdir sub_directory
# 서브 디렉토리로 이동.
cd sub_directory
# 서브 디렉토리에서 파일을 생성.
touch file3.txt
# 상위 디렉토리로 이동.
cd ..
4. 파일 및 디렉토리 이동하기
# 파일을 서브 디렉토리로 이동.
mv file1.txt sub_directory/
# 서브 디렉토리의 내용을 확인.
ls sub_directory
5. 파일 및 디렉토리 이름 변경하기
# 파일 이름을 변경합니다.
mv sub_directory/file1.txt sub_directory/renamed_file1.txt
# 디렉토리 이름을 변경합니다.
mv sub_directory new_sub_directory
# 변경된 이름 확인
ls
6. 파일 비교하기
# 두 파일의 내용을 비교.
echo "Hello, World!" > file4.txt
diff file2.txt file4.txt
# 두 파일이 동일한지 확인.
cmp file2.txt file4.txt
diff [파일1] [파일2]: 두 파일의 차이점을 비교. 주로 text 파일 비교에 사용됨.- diff는 파일을 텍스트로 해석해 줄 단위로 비교하고, 변경된 부분을 사람이 읽기 쉬운 형태로 출력
- 같으면 출력 없음 / 다르면 추가·삭제·변경된 줄을 출력
- < : file1 내용 (old)
- > : file2 내용 (new)
cmp [파일1] [파일2]: 두 파일이 동일한지 확인 (binary모드로 비교).- 아무런 출력이 없다면 파일이 동일하다는 의미임.
- 바이트 단위로 두 파일을 비교하며, 동일하면 출력이 없고, 다르면 차이가 발생한 위치(바이트 위치와 줄 번호) 를 출력.
- cmp의 출력에서 바이트 번호는 1부터 시작함.
diff는 git diff 등에서 많이 사용됨 (다음글에서 Unified Format 참고할 것):
2024.05.20 - [utils/git and github] - git diff
git diff
git diffgit diff 명령어를 사용하면 어떤 라인이 추가되었는지, 삭제되었는지, 수정되었는지 등의 차이를 알 수 있음.Git에서 두 버전의 파일을 비교하여 차이를 보여주는 명령어변경된 내용이 어떤
ds31x.tistory.com
다음은 Windows의 comp 에 대한 설명임.
2024.05.20 - [utils/cmd and powershell] - [cmd] comp 명령어
[cmd] comp 명령어
comp 명령어는 CMD 프롬프트에서 파일을 비교하는 데 사용되는 프로그램.이 명령어는 두 파일 또는 두 파일 집합을 비교하여 차이점을 출력.comp 명령어는 기본적으로 파일을 바이너리 모드로 비교
ds31x.tistory.com
7. 파일 및 디렉토리 삭제하기
# 파일을 삭제.
rm file2.txt
# 디렉토리를 삭제. (디렉토리가 비어있을 때)
rmdir new_sub_directory
# 새 디렉토리를 생성하고 파일을 넣은 후, 비어있지 않은 디렉토리를 삭제.
mkdir temp_directory
touch temp_directory/temp_file.txt
# 비어있지 않은 디렉토리를 강제로 삭제.
rm -r temp_directory
# 최종 확인을 위해 현재 디렉토리의 내용을 확인.
ls
8. grep과 find
2025.12.31 - [shell] - grep (Global Regular Expression Print)
2024.05.11 - [Linux] - [linux] find 사용법.
[linux] find 사용법.
find 명령어 사용법find 명령어는 UNIX 및 Linux 기반 시스템에서파일이나 디렉토리를 검색할 때 사용하는 S/W.이 명령어는 지정된 "[검색 시작 경로]"에서부터 파일 시스템을 순회하며주어진 조건에
ds31x.tistory.com
추가적인 유용한 명령어들
# 현재 디렉토리의 경로를 확인.
pwd
# 숨겨진 파일 포함, 모든 파일을 자세히 확인.
ls -la
# 파일의 내용을 확인.
cat new_sub_directory/renamed_file1.txt
# 파일 크기와 디렉토리 사용량을 확인.
du -sh
pwd (print working directory): https://dsaint31.me/mkdocs_site/OS/linux_cmds/#directory
BME
명령어 (Linux) 이 문서는 Linux의 bash(Bourne Again SHell)에서 사용되는 기본적인 명령어를 소개합니다. Bash는 Linux의 Terminal과 사용되는 Shell임. Linux의 기본적인 명령어를 실행하고, 간단한 스크립트 (.sh
dsaint31.me
ls (list) : https://dsaint31.me/mkdocs_site/OS/linux_cmds/#directory_2
BME228
Linux : 명령어 모음. 현재 directory 확인 현재 directory를 확인하는 명령어는 pwd(print working directory)이다. 현재 위치를 확인한다. 즉, 현재 directory의 절대 경로를 출력한다. directory 이동 다른 사용자의
dsaint31.me
2023.09.30 - [Linux] - [Linux] 파일 내용확인하기: cat, bat, less, more, head, tail
[Linux] 파일 내용확인하기: cat, bat, less, more, head, tail
cat, bat, head, tail대표적인 text processing utilities로 file viewing commands라고도 불림.less, morepager라고 불리는 utilities로 긴 출력을 화면에 페이지 단위로 나누어 보여주는 역할을 수행함.cat, batcat (concatenate
ds31x.tistory.com
2024.01.24 - [Linux] - [linux] cmd: disk usage and disk free: du and df
[linux] cmd: disk usage and disk free: du and df
du (disk usage)file들의 집합 또는 directory가 disk얼마나 사용하고 있는지를 표시 (recursive하게 동작)-s 또는 -d option 을 반드시 사용해야 한다.디스크를 차지하는 모든 요소들을 순회하는 방식으로 동작
ds31x.tistory.com
요약
mkdir [디렉토리명]: 디렉토리 생성cd [디렉토리명]: 디렉토리 이동touch [파일명]: 빈 파일 생성echo "내용" > [파일명]: 파일 생성 및 내용 추가ls: 현재 디렉토리 내용 확인mv [파일명/디렉토리명] [새_이름/목적지]: 파일 및 디렉토리 이동 또는 이름 변경diff [파일1] [파일2]: 두 파일의 차이점을 비교cmp [파일1] [파일2]: 두 파일이 동일한지 확인rm [파일명]: 파일 삭제rmdir [디렉토리명]: 비어있는 디렉토리 삭제rm -r [디렉토리명]: 비어있지 않은 디렉토리 강제 삭제pwd: 현재 경로 확인ls -la: 숨겨진 파일 포함, 자세히 목록 보기cat [파일명]: 파일 내용 보기du -sh: 디스크 사용량 보기
같이 읽어보면 좋은 자료들
https://dsaint31.me/mkdocs_site/OS/linux_cmds/
BME228
Linux : 명령어 모음. 현재 directory 확인 현재 directory를 확인하는 명령어는 pwd(print working directory)이다. 현재 위치를 확인한다. 즉, 현재 directory의 절대 경로를 출력한다. directory 이동 다른 사용자의
dsaint31.me
windows powershell 의 기본 cmdlet
2025.12.31 - [utils/cmd and powershell] - Windows PowerShell 명령어 (기본): PowerShell 5.x
Windows PowerShell 명령어 (기본): PowerShell 5.x
5.x 라고 했으나, MS사가 Windows PowerShell의 버전을 5.1로 동결하고 이후의 버전은 PowerShell 6+ (현재의 Major version은 7임)로 분리한 상태임. 기능 개선이 되어야 minor version이 올라가는데, Windows버전 향상
ds31x.tistory.com
cmd.exe 의 기본 명령어
2024.05.20 - [utils/cmd and powershell] - [cmd] command prompt 연습하기 (file, dir 사용하기)
[cmd] command prompt 연습하기 (file, dir 사용하기)
CMD 프롬프트 기초 튜토리얼: 파일 및 디렉토리 다루기1. CMD 프롬프트 열기Windows 키 + R을 눌러 실행 창을 엽니다.cmd를 입력하고 Enter를 누릅니다.기본적으로 현재 User의 home 디렉토리를 cwd (current wo
ds31x.tistory.com
2023.10.02 - [분류 전체보기] - Shell 과 CLI 명령어 요약 정리
Shell 과 CLI 명령어 요약 정리
Shell 이란?https://dsaint31.me/mkdocs_site/OS/console_terminal_shell_kernel/?h=shell#shell BMEConsole, Terminal, and Shell Console: 컴퓨터(주로 서버)에 command를 작성하여 입력하고 그 결과를 확인할 수 있는 (물리적) 입출력
ds31x.tistory.com
'shell' 카테고리의 다른 글
| kill: Process에게 Signal을 보내기. (3) | 2025.07.25 |
|---|---|
| Shell 함수 기본: bash, zsh에서 함수 사용하기 (3) | 2025.07.25 |
| Shell Script Conditionals(조건문)-test, [], [[]],(()) (1) | 2025.07.25 |
| [Shell] command substitution (1) | 2023.10.01 |
| [Bash] shell 기본 : 변수 설정 및 반복구문 (0) | 2023.07.19 |