fsck revision 89ea179b603cecfd1096a673073325f13028c421
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankg#!/bin/bash
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankgfd=0
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankg
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankgOPTIND=1
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankgwhile getopts "C:aTlM" opt; do
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankg case "$opt" in
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankg C)
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankg fd=$OPTARG
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankg ;;
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankg \?);;
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankg esac
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankgdone
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankg
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankgshift "$((OPTIND-1))"
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankgdevice=$1
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankg
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankgecho "Running fake fsck on $device"
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankg
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankgdeclare -a maxpass=(30 5 2 30 60)
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankg
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankgfor pass in {1..5}; do
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankg maxprogress=${maxpass[$((pass-1))]}
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankg for (( current=0; current<=${maxprogress}; current++)); do
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankg echo "$pass $current $maxprogress $device">&$fd
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankg sleep 0.1
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankg done
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankgdone
f83d2c5238c9d61f4420d2f7406c70a591a9b593fuankg