Chia hàng nghìn ảnh vào từng thư mục với tối đa 100 ảnh

Paratime Studio thường gửi ảnh cho khách hàng qua Google Drive. Nhiều khi là vài trăm hoặc vài nghìn ảnh có dung lượng lớn. Nếu không dùng ứng dụng để đồng bộ thì sẽ rất khó để tải về tất cả.

Thường thì nếu khách hàng gặp khó khăn, anh sẽ chia thành từng thư mục chứa 100 ảnh một. Nếu chỉ có vài ba trăm ảnh thì có thể làm thủ công. Còn nhiều hơn thì tốt nhất là dùng tí vỏ sò cho nó nhanh và chính xác.

Giả sử có 952 ảnh thì phải tạo 10 thư mục (đặt tên theo số thứ tự từ 1 đến 10) và lần lượt chuyển từng 100 ảnh vào từng thư mục.

for i in `seq 1 10`; do mkdir $i; mv `ls -1 *.jpg | head -100` ./$i/; done

Còn nếu lười tính xem cần tạo bao nhiêu thư mục thì để máy móc tính giúp:

files=`ls -1 *.jpg | wc -l`
((x = $files+99, folders=x/100))

for i in `seq 1 $folders`; do
    echo "$i/$folders"
    mkdir $i
    mv `ls -1 *.jpg | head -100` ./$i/
done

Khách hàng sẽ phải mất công tải từng thư mục nhỏ về, giải nén và nếu cần thì có thể gộp lại: mv ./*/*.jpg ./

Tuy hơi mất công tí nhưng còn hơn là không thể nào mà tải toàn bộ ảnh về.