#!/usr/bin/perl -w

sub DateTimeStr
{
	my ($Sekunden, $Minuten, $Stunden, $Monatstag, $Monat, $Jahr, $Wochentag, $Jahrestag, $Sommerzeit) = localtime(time);
	$Monat+=1;
	$Jahrestag+=1;
	$Monat = $Monat < 10 ? $Monat = "0".$Monat : $Monat;
	$Monatstag = $Monatstag < 10 ? $Monatstag = "0".$Monatstag : $Monatstag;
	$Stunden = $Stunden < 10 ? $Stunden = "0".$Stunden : $Stunden;
	$Minuten = $Minuten < 10 ? $Minuten = "0".$Minuten : $Minuten;
	$Sekunden = $Sekunden < 10 ? $Sekunden = "0".$Sekunden : $Sekunden;
	$Jahr+=1900;    
	return sprintf("%02d.%02d.%02d %02d:%02d:%02d", $Monatstag, $Monat, $Jahr, $Stunden, $Minuten, $Sekunden, $Stunden*3600 + $Minuten*60 + $Sekunden);
}

sub FormatSize
{
	my $Size = $_[0];
	if ($Size < 1024)
	{
		return "$Size Bytes";
	}
	elsif ($Size < (1024*1024))
	{
		return sprintf("%1.1f KBytes", $Size/1024);
	}
	elsif ($Size < (1024*1024*1024))
	{
		return sprintf("%1.1f MBytes", $Size/1024/1024);
	}
	else
	{
		return sprintf("%1.1f GBytes", $Size/1024/1024/1024);
	}
}

sub random_int($$)
{
	srand;
	my($min, $max) = @_;
	# Assumes that the two arguments are integers themselves!
	return $min
		if $min == $max;
	($min, $max) = ($max, $min) 
	
	if  $min > $max;
      return $min + int rand(1 + $max - $min);
}

sub CheckArgs
{
	my $CurrentArgIndex = shift;
	my $ArgumentsNeeded = shift;
	
	if (@ARGV > $CurrentArgIndex + $ArgumentsNeeded)
	{
		return 1;
	}
	else
	{
		print '*** Not enough parameters for option "'.$ARGV[$CurrentArgIndex].'"'."\n\n";
		exit;
		return 0;
	}
}

1
