#!/bin/bash if [ "$1" = "" ]; then echo "Required parameter missing -" exit 1 fi drive=$(echo $1 | tr [:lower:] [:upper:]) sp="\0040" bs="\0010" spaces() { e="" for i in $(seq 1 $1); do e="${e}${sp}" done echo $e } el=$(spaces 50) label1="\n\nWARNING: ALL DATA ON NON-REMOVABLE DISK \nDRIVE $drive WILL BE LOST \nProceed with Format (Y/N)?" label2="\n\n \nChecking existing disk format. \nRecording current bad clusters" proc1="Complete. $el \nVerifying 1,023.71M" proc2="Format complete. $el \nWriting out file allocation table" proc3="Complete. $el \nCalculating free space (this may take several minutes)..." proc4="Complete. $el \n\nVolume label (11 characters, ENTER for none)?${sp}" label3="\n \n1,071,337,472 bytes total disk space \n1,071,337,472 bytes available on disk \n \n$(spaces 8)4,096 bytes in each allocation unit. \n$(spaces 6)261,556 allocation units available on disk. \n\nVolume Serial Number is 1E36-1EF5\n\n\n" type_delay=0.3 counter_delay_short=0.05 counter_delay_vshort=0.005 counter_delay_long=0.3 cmd_delay=1 pause() { sleep $cmd_delay } print() { for i in $(seq 0 ${#1}); do c=${1:$i:1} if [ "$c" = " " ]; then c=$sp fi echo -ne $c sleep $type_delay done } counter() { for i in $(seq 1 100); do l="${sp}$i percent completed." echo -ne $l sleep $1 for j in $(seq 0 ${#l}); do echo -en $bs done done } echo -en $label1 pause print "y" echo -e $label2 counter $counter_delay_short echo -e $proc1 counter $counter_delay_long echo -e $proc2 counter $counter_delay_short echo -e $proc3 counter $counter_delay_vshort echo -en $proc4 pause print "l33t h4xx0r" echo -en $label3