개발자라면 누구나 매일 터미널에서 많은 시간을 보냅니다. 적절한 커맨드라인 도구를 선택하면 작업 효율을 크게 높일 수 있죠. 오늘은 2026년에 주목해볼 만한 오픈소스 CLI 도구 5가지를 소개합니다. 각각 개발 과정에서 흔히 겪는 문제들을 해결해줍니다.

1. gping - 시각화 그래픽이 포함된 네트워크 모니터링 도구

기존 ping 명령어는 숫자로만 결과를 보여줬죠. 하지만 gping은 ping 결과를 실시간 그래프로 표시해서 네트워크 지연 변화 추세를 한눈에 볼 수 있습니다.

핵심 기능

  • 📊 ping 지연 시간을 실시간 그래프로 표시
  • 🎨 커스텀 색상 테마 지원
  • 💻 크로스플랫폼 지원 (Windows, Mac, Linux)
  • ⚡ 여러 호스트를 동시에 모니터링 가능
  • 🔧 --cmd 플래그로 명령어 실행 시간 모니터링 지원

설치 방법

Linux (Cargo):

BASH
cargo install gping

Linux (Homebrew):

BASH
brew install gping

Windows (Scoop):

BASH
scoop install gping

사용 예시

BASH
# 단일 호스트 모니터링
gping google.com

# 여러 호스트 동시 모니터링
gping google.com github.com 8.8.8.8

# 명령어 실행 시간 모니터링
gping --cmd "ls -la /var/log"

# 커스텀 색상 사용
gping --color "#00ff00" google.com

gping 예시 출력

프로젝트 주소: https://github.com/orf/gping


2. croc - 안전하고 간편한 파일 전송 도구

croc은 혁신적인 파일 전송 도구입니다. 어떤 컴퓨터든 간단하고 안전하게 파일과 폴더를 주고받을 수 있죠. 다른 도구들과 달리 croc은 릴레이 지원 P2P 전송 방식을 사용해 포트를 열거나 방화벽을 설정할 필요가 없습니다.

핵심 기능

  • 🔐 종단간 암호화 전송 (PAKE 프로토콜 사용)
  • 🔄 끊김 재전송 지원
  • 🌐 모든 운영체제 크로스플랫폼 지원
  • 🚀 멀티채널 전송으로 속도 향상
  • 📁 파일과 폴더 전송 모두 지원

설치 방법

Linux/macOS:

BASH
curl https://getcroc.schollz.com | bash

Go 사용:

BASH
go install github.com/schollz/croc/v10@latest

Windows (Chocolatey):

BASH
choco install croc

사용 예시

파일 보내기:

BASH
# 단일 파일 전송
croc send document.pdf

# 폴더 전송
croc send ./project-folder

# 여러 파일 전송
croc send file1.txt file2.txt file3.txt

파일 받기:

BASH
# 발신자가 제공한 코드로 수신
croc <전송-코드>

# 예시: croc 1234-example-code

croc의 가장 큰 장점은 설정이 전혀 필요 없다는 점입니다. 발신자가 명령어를 실행하면 자동으로 코드가 생성되고, 수신측이 다른 컴퓨터에서 같은 코드를 입력하면 바로 전송이 시작됩니다. 모든 전송은 릴레이 서버를 통해 암호화되어 보안이 철저히 보장됩니다.

프로젝트 주소: https://github.com/schollz/croc


3. dasel - 강력한 데이터 쿼리 및 변환 도구

dasel (data selector)은 다양한 데이터 형식을 쿼리하고 변환하는 도구입니다. JSON, YAML, TOML, XML, CSV 등 여러 포맷을 지원하며 SQL과 비슷한 선택자 문법을 사용합니다.

핵심 기능

  • 📄 JSON, YAML, TOML, XML, CSV 등 다양한 포맷 지원
  • 🔍 강력한 선택자 문법
  • 🔄 포맷 간 상호 변환
  • ⚡ 단일 바이너리 파일, 의존성 없음
  • 🎯 조건 필터링 및 정렬 지원

설치 방법

Go 사용:

BASH
go install github.com/TomWright/dasel/v2@latest

바이너리 다운로드:

BASH
# Linux
wget https://github.com/TomWright/dasel/releases/latest/download/dasel_linux_amd64 -O /usr/local/bin/dasel
chmod +x /usr/local/bin/dasel

# macOS
wget https://github.com/TomWright/dasel/releases/latest/download/dasel_darwin_amd64 -O /usr/local/bin/dasel
chmod +x /usr/local/bin/dasel

사용 예시

BASH
# JSON에서 특정 필드 선택
dasel -f data.json 'users.*.name'

# YAML을 JSON으로 변환
dasel -r yaml -w json < config.yaml

# 조건 필터링
dasel -f users.json 'users.*.where(active==true).name'

# API 응답 처리
curl https://api.example.com/users | dasel 'data.*.email'

실무 활용: 복잡한 JSON 응답에서 특정 필드를 빠르게 추출하거나, 설정 파일 포맷 간 변환이 필요할 때 dasel은 Python 스크립트를 작성하는 것보다 훨씬 빠릅니다.

프로젝트 주소: https://github.com/TomWright/dasel


4. qsv - 고성능 CSV 데이터 처리 도구

qsv는 Rust로 작성된 초고속 CSV 데이터 처리 도구 모음입니다. CSV 파일을 SQL처럼 다룰 수 있으며, 기존 도구보다 10~100배 빠릅니다.

핵심 기능

  • ⚡ 초고속 처리 (Rust 기반, 멀티스레드)
  • 📊 대용량 CSV 파일 지원 (GB 단위)
  • 🔧 40개 이상의 서브명령어 (필터링, 통계, 변환 등)
  • 📈 내장 통계 분석 기능
  • 🔗 원격 URL 및 압축 파일 지원

설치 방법

Linux/macOS (사전 컴파일된 바이너리):

BASH
curl -LJO https://github.com/dathere/qsv/releases/latest/download/qsv-linux.zip
unzip qsv-linux.zip
sudo mv qsv /usr/local/bin/

Cargo 사용:

BASH
cargo install qsv

사용 예시

BASH
# CSV 파일 통계 확인
qsv stats data.csv

# 특정 행 필터링
qsv select name,email,age data.csv | qsv search -s age '^2[0-9]$'

# 정렬
qsv sort -s age -n data.csv > sorted.csv

# 중복 제거
qsv dedup data.csv > unique.csv

# 전치 (행↔열 변환)
qsv transpose data.csv

# 샘플링
qsv sample 100 data.csv > sample.csv

성능 비교: 100만 행 CSV 파일을 처리할 때 qsv는 단 몇 초면 끝나지만, 기존 도구는 수 분이 걸릴 수 있습니다.

프로젝트 주소: https://github.com/dathere/qsv


5. grex - 스마트 정규표현식 생성기

grex는 테스트 문자열을 기반으로 정규표현식을 자동으로 생성해주는 커맨드라인 도구입니다. 더 이상 복잡한 정규식을 손수 작성할 필요가 없습니다!

핵심 기능

  • 🤖 예시를 바탕으로 자동 생성
  • 📝 다양한 프로그래밍 언어 출력 지원
  • 🎯 정확한 매칭 또는 범용 패턴
  • 🔧 생성 옵션 커스터마이징 가능
  • 📚 파일에서 테스트 케이스 읽기 지원

설치 방법

Cargo 사용:

BASH
cargo install grex

Homebrew 사용:

BASH
brew install grex

바이너리 다운로드:

BASH
# Linux
wget https://github.com/pemistahl/grex/releases/latest/download/grex-x86_64-linux
chmod +x grex-x86_64-linux
sudo mv grex-x86_64-linux /usr/local/bin/grex

사용 예시

BASH
# 예시로 정규식 생성
grex 123 456 789
# 출력: ^\d+$

# 이메일 매칭 정규식 생성
grex user@example.com admin@test.org
# 출력: ^[a-zA-Z]+@[a-zA-Z]+\.[a-zA-Z]+$

# 특정 프로그래밍 언어로 출력
grex --programming-languages python 192.168.1.1 10.0.0.1

# 파일에서 테스트 케이스 읽기
grex --file test-cases.txt

# 범용 패턴 생성 (더 느슨하게)
grex --universal 2024-01-15 2024-02-20 2024-03-25

실무 활용: 사용자 입력 검증, 로그 파일 파싱, 특정 형식의 데이터 추출이 필요할 때 grex는 신뢰할 수 있는 정규식을 빠르게 생성해줘서 수동 작성 실수를 방지합니다.

프로젝트 주소: https://github.com/pemistahl/grex


요약 비교

도구 주요 용도 설치 난이도 학습 곡선
gping 네트워크 모니터링 ⭐ ⭐
croc 파일 전송 ⭐ ⭐
dasel 데이터 쿼리 ⭐⭐ ⭐⭐
qsv CSV 처리 ⭐⭐ ⭐⭐⭐
grex 정규식 생성 ⭐ ⭐

왜 이 도구들을 선택해야 할까?

  1. 오픈소스 무료 - 모든 도구가 오픈소스라서 자유롭게 사용하고 기여할 수 있습니다
  2. 크로스플랫폼 - Linux, macOS, Windows 모두 지원
  3. 활발한 유지보수 - 프로젝트가 지속적으로 업데이트되며 커뮤니티가 활발합니다
  4. 실제 문제 해결 - 각 도구가 개발 중 실제로 겪는 구체적인 문제점을 타겟으로 합니다
  5. 뛰어난 성능 - 대부분 Rust/Go로 작성되어 빠릅니다

시작하기

gping과 croc부터 시작하는 것을 추천합니다. 가장 쉽게 접근할 수 있고 효과도 바로 느낄 수 있죠. 익숙해지면 더 강력한 dasel과 qsv로 복잡한 데이터 작업을 처리해보세요.

이 도구들은 이미 제 일상 워크플로우에 통합되어 생산성을 크게 높여줬습니다. 여러분도 커맨드라인 작업 효율을 높이는 데 도움이 되길 바랍니다!


참고 자료: