up
up
This commit is contained in:
47
SH/enbatch_run.sh
Normal file
47
SH/enbatch_run.sh
Normal file
@@ -0,0 +1,47 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Kiểm tra có đối số không
|
||||
if [ -z "$1" ]; then
|
||||
echo "Usage: $(basename "$0") <courseid>"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
courseid="$1"
|
||||
|
||||
# Lưu thư mục hiện tại (nơi chạy script, không phải nơi đặt script)
|
||||
BASEDIR="$(pwd)"
|
||||
|
||||
for dir in */ ; do
|
||||
# Bỏ dấu '/' cuối
|
||||
dirname="${dir%/}"
|
||||
|
||||
# Cắt phần số trước dấu '.' và trim khoảng trắng
|
||||
index=$(echo "$dirname" | cut -d'.' -f1 | tr -d '[:space:]')
|
||||
|
||||
# Bỏ số 0 đầu nếu có
|
||||
index_nozero=$(echo "$index" | sed 's/^0*//')
|
||||
|
||||
# Nếu chuỗi rỗng (trường hợp '0')
|
||||
if [ -z "$index_nozero" ]; then
|
||||
index_nozero=0
|
||||
fi
|
||||
|
||||
# Kiểm tra là số hợp lệ
|
||||
if [[ "$index_nozero" =~ ^[0-9]+$ ]]; then
|
||||
# Tính i-1
|
||||
i_minus_1=$((index_nozero - 1))
|
||||
|
||||
echo "===> Đang xử lý thư mục: $dirname (index: $index_nozero, i-1: $i_minus_1)"
|
||||
|
||||
# Chuyển vào thư mục
|
||||
cd "$dirname" || { echo "Không thể vào thư mục $dirname"; exit 1; }
|
||||
|
||||
# Gọi online.sh với courseid từ dòng lệnh và i-1
|
||||
english.sh "$courseid" "$i_minus_1"
|
||||
|
||||
# Quay lại thư mục gốc
|
||||
cd "$BASEDIR"
|
||||
else
|
||||
echo "Bỏ qua $dirname (không bắt đầu bằng số)"
|
||||
fi
|
||||
done
|
Reference in New Issue
Block a user