⬅️ 이전     🏠 분류 목차

유틸리티 Utility

유틸리티 (Utility)

1. 유틸리티의 개념과 역할

유틸리티는 사용자가 시스템을 편리하게 사용하기 위한 용용 프로그램입니다. 쉘과 유틸리티는 사용자 입장에서는 구분이 필요 없으며, 시스템을 더욱 효율적으로 사용할 수 있도록 도움을 줍니다.

유틸리티의 주요 기능

시스템 관리:

  • 시스템 모니터링: CPU, 메모리, 디스크 사용량 확인
  • 네트워크 관리: 네트워크 연결 및 설정 관리
  • 사용자 관리: 사용자 계정 및 권한 관리
  • 서비스 관리: 시스템 서비스 시작/중지/재시작

파일 관리:

  • 파일 조작: 파일 복사, 이동, 삭제
  • 압축/해제: 파일 압축 및 압축 해제
  • 검색: 파일 및 디렉토리 검색
  • 편집: 텍스트 파일 편집

2. 주요 유틸리티

시스템 모니터링 유틸리티

CPU 및 메모리 모니터링:

# CPU 사용량 확인
top
htop
mpstat

# 메모리 사용량 확인
free -h
vmstat

# 디스크 사용량 확인
df -h
du -sh directory

네트워크 모니터링:

# 네트워크 연결 확인
netstat -tuln
ss -tuln

# 네트워크 인터페이스 확인
ip addr
ifconfig

# 네트워크 연결 테스트
ping hostname
traceroute hostname

파일 관리 유틸리티

파일 조작:

# 파일 복사
cp source destination

# 파일 이동
mv old_name new_name

# 파일 삭제
rm filename

# 파일 내용 보기
cat filename
less filename
head -n 10 filename
tail -n 10 filename

파일 검색:

# 파일 검색
find /path -name "filename"

# 내용 검색
grep "pattern" filename

# 파일 타입 확인
file filename

# 파일 권한 확인
ls -la filename

텍스트 처리 유틸리티

텍스트 편집:

# 간단한 텍스트 편집
nano filename
vim filename

# 텍스트 처리
sed 's/old/new/g' filename
awk '{print $1}' filename

# 텍스트 정렬
sort filename
uniq filename

파일 비교:

# 파일 비교
diff file1 file2

# 파일 병합
patch file.patch

# 파일 무결성 확인
md5sum filename
sha256sum filename

3. 유틸리티의 특징

모듈화된 설계

유틸리티의 특징:

  • 단일 기능: 각 유틸리티는 하나의 특정 기능을 수행
  • 파이프라인: 여러 유틸리티를 연결하여 복잡한 작업 수행
  • 재사용성: 다른 스크립트나 프로그램에서 재사용 가능
  • 확장성: 새로운 유틸리티 추가 가능

Unix 철학

Unix 철학의 적용:

  • 작은 것이 아름답다: 작고 단순한 프로그램
  • 한 가지 일을 잘 한다: 각 프로그램은 하나의 기능에 집중
  • 파이프라인으로 연결: 프로그램들을 연결하여 복잡한 작업 수행
  • 텍스트 기반: 텍스트 파일을 통한 데이터 교환

⬅️ 이전

서브목차