다음은 출처 페이지의 내용을 자연스럽게 간추린 것입니다.
모던 쉘 명령어는 Rust, Go와 같은 최신 프로그래밍 언어로 개발되어 뛰어난 속도와 효율성을 자랑하며, 사용자 친화적인 인터페이스를 제공합니다. 주요 장점은 다음과 같습니다.
- 속도: Rust 기반 도구들은 병렬 처리를 통해 기존 명령어보다 훨씬 빠른 성능을 제공합니다.
 - 가독성: 컬러 출력과 직관적인 결과물로 데이터를 훨씬 쉽게 파악할 수 있습니다.
 - 유사한 문법: 기존 명령어와 유사한 문법을 채택하여 학습 곡선이 완만하며 빠르게 적응할 수 있습니다.
 - 확장된 기능: Git 통합, 유니코드 지원, 향상된 정규 표현식 등 최신 개발 환경에 필요한 기능들을 기본으로 제공합니다.
 
| 전통 쉘 명령어 | 모던 쉘 명령어 | 주요 특징 | 
|---|---|---|
grep | 
ripgrep (rg) | 
고속 검색, .gitignore 통합, 컬러 출력 | 
sed | 
sd | 
간결한 치환 문법, 빠른 처리 | 
find | 
fd | 
직관적인 검색, .gitignore 지원 | 
cat | 
bat | 
구문 강조, Git 통합, 자동 페이징 | 
watch | 
hwatch | 
변경 사항 강조, 로그 저장 | 
top | 
htop | 
컬러 UI, 프로세스 트리 뷰 | 
du | 
dust | 
트리 구조, 직관적인 시각화 | 
위에서 소개된 모든 모던 쉘 명령어를 한 번에 설치하는 명령어입니다.
sudo apt-get update && \
sudo apt-get install -y ripgrep sd fd-find bat hwatch htop dustbrew update && \
brew install ripgrep sd fd bat hwatch htop dustgrep은 파일 내에서 패턴을 검색하는 데 사용되지만, 대규모 프로젝트에서는 속도 저하가 발생할 수 있습니다. ripgrep (rg)은 Rust로 개발된 초고속 검색 도구로, 멀티스레딩을 지원하며 .gitignore 파일을 자동으로 인식하여 불필요한 파일을 검색에서 제외합니다.
.gitignore및 숨김 파일 자동 무시- UTF-8, 정규 표현식 완벽 지원
 - 컬러 출력 및 파일별 매칭 라인 시각화
 
# Ubuntu/Debian
sudo apt-get install ripgrep
# macOS (Homebrew)
brew install ripgrep- 
기본 검색 (
src/디렉토리에서 "function" 검색):# grep grep -r "function" ./src # rg rg "function" ./src
 - 
파일 확장자 제한 (Python 파일에서 "function" 검색):
# grep grep -r --include="*.py" "function" ./src # rg rg "function" --type py
 - 
JSON 출력 ("error" 검색 결과를 JSON으로 출력):
# grep (추가 도구 jq 필요) grep -r "error" ./src | jq . # rg rg "error" --json > results.json
 
sed는 텍스트 스트림 편집에 유용하지만, 복잡한 정규 표현식과 비직관적인 문법으로 초보자가 사용하기 어렵습니다. sd는 Rust로 작성된 간결하고 빠른 대안으로, 직관적인 패턴 치환 기능을 제공하여 텍스트 편집을 훨씬 쉽게 만듭니다.
- 간단하고 직관적인 치환 문법
 - 빠른 처리 속도
 - 멀티라인 지원
 
# Ubuntu/Debian
sudo apt-get install sd
# macOS (Homebrew)
brew install sd- 
문자열 치환 ("world"를 "universe"로 치환):
# sed echo "hello world" | sed 's/world/universe/' # sd echo "hello world" | sd "world" "universe"
 - 
파일 내 치환 (
file.txt에서 "old_text"를 "new_text"로 치환):# sed sed -i 's/old_text/new_text/g' file.txt # sd sd "old_text" "new_text" file.txt
 - 
정규 표현식 (숫자를 "NUMBER"로 치환):
# sed sed 's/[0-9]\+/NUMBER/g' file.txt # sd sd '\d+' 'NUMBER' file.txt
 
find는 파일 검색에 강력하지만, 복잡한 옵션과 상대적으로 느린 속도가 단점입니다. fd는 Rust 기반의 빠르고 직관적인 대안으로, 간결한 문법과 .gitignore 지원을 통해 불필요한 파일을 검색에서 제외하여 더욱 효율적인 파일 검색을 가능하게 합니다.
- 컬러 출력 및 사용자 친화적인 결과
 .gitignore와 자동 통합- 빠른 파일/디렉토리 검색
 
# Ubuntu/Debian
sudo apt-get install fd-find
# macOS (Homebrew)
brew install fd- 
파일 검색 (
src/에서 "test" 포함 파일 검색):# find find ./src -name "*test*" # fd fd "test" ./src
 - 
확장자 제한 (Python 파일 검색):
# find find . -name "*.py" # fd fd --extension py
 - 
숨김 파일 포함 (
.bashrc파일 검색):# find find . -name ".bashrc" # fd fd --hidden .bashrc
 
cat은 파일 내용을 단순히 출력하지만, 가독성이 떨어집니다. bat은 Rust 기반의 cat 대안으로, 구문 강조, 줄 번호 표시, Git 통합 기능을 제공하여 코드나 텍스트 파일을 훨씬 보기 좋게 출력합니다.
- 다양한 언어에 대한 구문 강조 및 테마 지원
 - Git 변경 사항 시각적으로 표시
 - 자동 페이징 기능 내장 (큰 파일도 편리하게 조회)
 
# Ubuntu/Debian
sudo apt-get install bat
# macOS (Homebrew)
brew install bat- 
파일 출력 (Python 파일 출력):
# cat cat file.py # bat bat file.py
 - 
줄 번호 표시 (
file.txt에 줄 번호 출력):# cat cat -n file.txt # bat bat -n file.txt
 - 
Git 변경 사항 (Git 수정 사항 표시):
# cat # 지원 없음 # bat bat --diff file.py
 
watch는 명령어를 주기적으로 실행하지만, 출력 변화를 파악하기 어렵습니다. hwatch는 Rust 기반의 대안으로, 컬러 출력과 변경 사항 강조 기능을 통해 주기적으로 갱신되는 정보의 변화를 한눈에 파악할 수 있도록 돕습니다.
- 변경된 출력만 강조하여 표시
 - 히스토리 및 로그 저장 기능
 - 직관적인 인터페이스
 
# Ubuntu/Debian
sudo apt-get install hwatch
# macOS (Homebrew)
brew install hwatch- 
주기적 실행 (디렉토리 목록 2초마다 갱신):
# watch watch ls -la # hwatch hwatch ls -la
 - 
인터벌 지정 (5초마다 디스크 사용량 출력):
# watch watch -n 5 df -h # hwatch hwatch -n 5 df -h
 - 
로그 저장 (출력을 로그 파일로 저장):
# watch # 지원 없음 # hwatch hwatch --log output.log ls
 
top은 시스템 프로세스 모니터링 도구지만, 텍스트 기반의 제한적인 UI가 아쉽습니다. htop은 컬러 인터페이스와 사용자 친화적인 조작(마우스/키보드)을 제공하는 강력한 대안으로, 시스템 자원 사용 현황을 더욱 상세하고 직관적으로 보여줍니다.
- 컬러 및 트리 뷰로 프로세스 시각화
 - 프로세스 필터링 및 검색 기능
 - CPU, 메모리 사용량의 시각적 표현
 
# Ubuntu/Debian
sudo apt-get install htop
# macOS (Homebrew)
brew install htop- 
기본 실행 (프로세스 목록 표시):
# top top # htop htop
 - 
특정 사용자 프로세스 표시 (현재 사용자 프로세스만 표시):
# top top -u $USER # htop htop -u $USER
 - 
정렬 기능 (CPU/메모리 기준 정렬):
# top # 키보드 입력으로 제한적 정렬 (예: P, M 키) # htop # F6 키를 눌러 CPU/메모리 등 다양한 기준으로 정렬
 
du는 디렉토리 크기를 확인하는 데 사용되지만, 출력이 복잡하여 큰 디렉토리 구조에서는 파악하기 어렵습니다. dust는 Rust 기반으로 개발되어, 트리 구조와 직관적인 시각화를 통해 디렉토리별 공간 사용량을 훨씬 쉽게 이해할 수 있도록 돕습니다.
- 트리 뷰로 디렉토리 크기 시각화
 - 빠른 분석 및 정렬 기능
 - 사용자 친화적이고 깔끔한 출력
 
# Ubuntu/Debian
sudo apt-get install dust
# macOS (Homebrew)
brew install dust- 
디렉토리 크기 확인 (현재 디렉토리 크기 확인):
# du du -sh * # dust dust
 - 
깊이 제한 (2단계 깊이까지 표시):
# du du -d 2 # dust dust -d 2
 - 
숨김 파일 포함 (숨김 파일 포함하여 크기 확인):
# du du -sh .[!.]* * # dust dust -a