files=( *.m2v ) for i in ${!files[@]}; do rand_date[i]=$(( $((RANDOM%37)) + 1970 ))$(printf "%02d" $((RANDOM%12 + 1)) )$(printf "%02d" $((RANDOM%30 +1)) ) touch -d ${rand_date[i]} ${files[i]} done IN_FILES=( $(ls -t -1 ${files[@]} ) # output $ ls -lt "${files[@]}" -rw-r--r-- 1 robert robert 2215918 1989-09-05 00:00 slice1-2_tmp.m2v -rw-r--r-- 1 robert robert 3005658 1987-09-17 00:00 slice0-1_tmp.m2v -rw-r--r-- 1 robert robert 1181320 1985-10-11 00:00 slice2-1_tmp.m2v -rw-r--r-- 1 robert robert 1769586 1982-10-17 00:00 slice1-1_tmp.m2v -rw-r--r-- 1 robert robert 1442461 1980-08-29 00:00 slice2-2_tmp.m2v -rw-r--r-- 1 robert robert 1362516 1980-05-02 00:00 slice0-2_tmp.m2v [robert@phebehouse makecollage_work.0] $ stat -L -c "%Y" "${files[@]}" 558849600 326088000 403675200 620971200 497851200 336369600