Files
caliverse_doc/04. 서버설정/Shell Script/create_file_random.sh
2025-05-01 07:27:54 +09:00

37 lines
998 B
Bash

#!/bin/bash
# 사용법 출력 함수
print_usage() {
echo "사용법: $0 <디렉토리> <파일개수> <최소크기(MB)> <최대크기(MB)>"
echo "예: $0 ~/myfiles 5 2 5"
exit 1
}
# 명령행 인수 확인
if [ "$#" -ne 4 ]; then
print_usage
fi
# 디렉토리 확인 및 이동
output_directory=$1
if [ ! -d "$output_directory" ]; then
echo "오류: 지정된 디렉토리가 존재하지 않습니다."
exit 1
fi
# 스크립트 실행 디렉토리로 이동
cd "$output_directory"
# 파일 개수 및 크기 설정
num_files=$2
min_file_size_mb=$3
max_file_size_mb=$4
# 무작위 파일 생성
for ((i=1; i<=num_files; i++)); do
random_filename=$(mktemp -u XXXXXXXXXX)
file_size_mb=$((min_file_size_mb + RANDOM % (max_file_size_mb - min_file_size_mb + 1)))
dd if=/dev/urandom of="${random_filename}.txt" bs=${file_size_mb}M count=1 status=none
echo "무작위 파일이 생성되었습니다: $output_directory/${random_filename}.txt (크기: ${file_size_mb}MB)"
done