Menu
Coddy logo textTech

타임스탬프 추가

Coddy Terminal 여정의 기초 섹션에 포함된 레슨 — 82개 중 78번째.

challenge icon

챌린지

쉬움

타임스탬프를 추가하여 백업 폴더 이름을 고유하게 만들어 보겠습니다. 이렇게 하면 각 백업이 이전 폴더를 덮어쓰는 대신 새 폴더를 생성하게 됩니다.

backup.sh를 다음과 같이 수정하세요:

  1. 이전 레슨의 모든 기존 코드를 유지합니다.
  2. 정적인 backup_dir="backup"을 타임스탬프를 포함하는 동적 이름으로 바꿉니다.
  3. date 명령어와 함께 명령어 치환(command substitution)을 사용하여 YYYYMMDD_HHMMSS 형식의 타임스탬프를 생성합니다.
  4. 백업 폴더의 이름은 backup_[timestamp]가 되어야 합니다.

형식 지정자를 사용한 date 명령어는 타임스탬프를 생성합니다:

date +%Y%m%d_%H%M%S

명령어 치환 $(command)을 사용하여 이 출력을 변수에 캡처합니다:

timestamp=$(date +%Y%m%d_%H%M%S)
backup_dir="backup_$timestamp"

스크립트를 실행하고 프롬프트가 표시되면 documents를 입력하세요. 출력은 다음과 같아야 합니다:

Backing up: documents
Created backup folder: backup_20240115_143052
Files copied successfully

출력되는 타임스탬프는 현재 날짜와 시간에 따라 달라집니다.

힌트: backup_dir을 정의하기 전에 timestamp=$(date +%Y%m%d_%H%M%S)를 추가한 다음, backup_dir="backup_$timestamp"를 사용하여 동적 폴더 이름을 생성하세요.

직접 해보기

터미널
cat > backup.sh << 'EOF'
#!/bin/bash
read -p "Enter source directory: " source_dir
echo "Backing up: $source_dir"
backup_dir="backup"
mkdir -p "$backup_dir"
echo "Created backup folder: $backup_dir"
cp "$source_dir"/* "$backup_dir"
echo "Files copied successfully"
EOF
echo "documents" | bash backup.sh
ls backup

기초의 모든 레슨