1 분 소요

리눅스 시스템에서 자주 사용하는 시간·터미널·프로그램 시간 측정·사용자 메시지 관련 명령어를 정리했습니다. date, time, write, clear 등은 서버나 실무 환경에서 모니터링 및 커뮤니케이션 도구로도 널리 사용됩니다.


1. 날짜 및 시간 확인 및 설정

1.1 cal – 달력 출력

  • 설명: 현재 월의 달력을 출력합니다.

  • 형식:

    cal [옵션]
    
  • 예시:

    cal
    

추가 옵션:

cal 12 2025    # 2025년 12월 달력 출력

1.2 date – 시스템 시간 확인 또는 설정

  • 설명: 현재 시스템의 날짜와 시간을 확인하거나 변경합니다.

  • 형식:

    date [옵션]
    
  • 예시:

    date                            # 현재 시간 출력
    date -s "2024-12-11 10:30:00"  # 시간 설정 (root 권한 필요)
    

커스텀 출력 형식도 가능:

date "+%Y-%m-%d %H:%M:%S"

2. 터미널 관리

2.1 clear – 터미널 초기화

  • 설명: 터미널의 출력 내용을 모두 지워 깨끗한 화면을 제공합니다.

  • 형식:

    clear
    

Ctrl+L 키도 같은 효과를 냅니다.


2.2 tty – 현재 터미널 정보 확인

  • 설명: 사용 중인 가상 터미널의 경로를 출력합니다.

  • 형식:

    tty
    
  • 예시 출력:

    /dev/pts/0
    

여러 사용자 접속 시, 터미널 구분이나 메시지 전송(write)에 유용합니다.


3. 프로그램 수행 시간 측정

3.1 time – 명령어 실행 시간 측정

  • 설명: 지정된 명령어를 실행하고, 걸린 시간을 출력합니다.

  • 형식:

    time [명령어]
    
  • 예시:

    time ls -l
    
  • 출력 예시:

    real    0m0.015s   # 실제 소요 시간 (wall clock time)
    user    0m0.005s   # 사용자 영역에서 사용한 시간
    sys     0m0.002s   # 커널 영역에서 사용한 시간
    

스크립트 성능 비교, 프로그램 튜닝 등에 자주 활용됩니다.


4. 사용자 간 메시지 전송

4.1 write – 다른 사용자에게 메시지 보내기

  • 설명: 시스템에 로그인한 다른 사용자에게 실시간 메시지를 전송합니다.

  • 형식:

    write 사용자
    
  • 사용 방법:

    1. 명령 실행: write user2
    2. 메시지 입력 후 Ctrl+D 입력으로 종료

수신자에게는 아래처럼 메시지가 표시됩니다:

Message from user1 on pts/0 at 10:30 ...

⚠️ mesg n으로 메시지 차단된 사용자에게는 전송 불가합니다.


실전 예제 요약

# 날짜 출력
date "+%Y-%m-%d %H:%M:%S"

# 2025년 달력 중 10월 출력
cal 10 2025

# 화면 초기화
clear

# 현재 터미널 확인
tty

# 파일 복사 시간 측정
time cp largefile /tmp/

# 사용자 간 메시지
write user2
(입력 후 Ctrl+D)

질문 정리

date 명령으로 시간 변경이 안 될 때?

  • root 권한 필요합니다: sudo date -s "..."

여러 달의 달력을 보고 싶다면?

cal -3     # 이전 달, 현재 달, 다음 달 출력

time 명령을 스크립트에 넣어도 되나요?

  • 네, 자동화 스크립트 성능 분석에 매우 유용합니다.

write가 동작하지 않을 때 해결 방법?

  • 수신자가 mesg n으로 메시지를 차단했을 수 있습니다.

    mesg y로 허용하도록 요청하세요.


정리

  • cal, date날짜 및 시간 제어
  • clear, tty터미널 정보 확인 및 초기화
  • time으로 프로그램 실행 시간 측정
  • write사용자 간 실시간 메시지 전송

카테고리:

업데이트:

댓글남기기