Schön, dass sie mal reinschauen.
Bevor ich mich vorstelle, hier mal eine kleine Kostprobe meiner Programmierkunst.
Es handelt sich dabei um ein Perl-Script.
Oder schauen sie mal ans Ende des Scripts.
#!/usr/bin/perl
# Ausgabe der Windows-Umgebungsvariablen
# Die Umgebugsvariablen befinden sich im vordefinierten Perl-Hash %ENV
# Programmer: Karl
# Created: 28.03.2007
#
# Update-History:
# 29.03.2007 - Comments included
# Start Code
until ($eingabe =~ /^n/i) # Schleife zur wiederholten Abarbeitung
# Ende mit n oder N
{
print "\n\nGefudene Umbebungsvariablen:\n\n";
$i =0; # Index-Zähler auf 0
while (($key, $value) = each %ENV) # Lesen aller Werte aus dem Hash
{
print "$i:\t $key \n"; # Ausgabe: Index : Key von %ENV
$env_array_value[$i] = $value; # übernehmen der Werte in ein Array
$env_array_key[$i] = $key; # übernehmen der Keys in ein Array
$i++;
}
$anzahl = keys %ENV; # Ermittlung der Anzahl von Wertepaaren
print "\nIm System wurden $anzahl Umgebungsvariablen gefunden";
# So kann man mit einer foreach-Schleife die Werte des hash verarbeiten
# Macht das Gleiche wie die while-Schleife siehe oben.
#foreach $key (keys(%ENV))
# {
# print "$i:\t $key \n";
# $env_array_value[$i] = $ENV{$key}; # übernehmen der Werte in ein Array
# $env_array_key[$i] = $key;
# $i++;
#}
print "\nVon welcher moechtest Du den Wert sehen? ";
$key = <STDIN>; # Einlesen von Index(Zahl) oder key(string)
chomp $key;
if ($key =~ /\d/) # Wenn Zahl eingegeben, dann Werte aus dem Array holen
{
if ($key <= $i) # ist ein existierender Index eingegeben worden ?
{
if ($env_array_value[$key] =~ /;/) # Ist der Wert ein String, der
# mehrere Elemente, getrennt durch
# ";" enthält ?
{
@path = split(/;/, $env_array_value[$key]); # Auftrennen des Strings
# und Schreiben in Array
print "\n$env_array_key[$key] :\n"; # Ausgabe Key-name
foreach $epath (@path)
{
print "\t$epath\n"; # Ausgabe Werte aus Array
} # untereinander
}
else # Wert enthält keine Einzelelemente duch ";" getrennt
{ # Ausgabe Key: Wert
print "\n$env_array_key[$key] :\t $env_array_value[$key] \n\n";
}
}
else # der Index existiert nicht !!!
{
print "Dieser Key existiert nicht. (Falsche Eingabe?)"; }
}
else # Wenn Key-Name eingegeben, dann Werte aus %ENV holen
{
if (exists $ENV{$key}) # Wenn der key existiert
{$key= uc($key);
if ($ENV{$key} =~ /;/) # Ist der Wert ein String, der
# mehrere Elemente, getrennt durch
# ";" enthält ?
{
@path = split(/;/, $ENV{$key}); # Auftrennen des Strings
# und Schreiben in Array
print "\n$key :\n"; # Ausgabe Key-name
foreach $epath (@path)
{
print "\t$epath\n"; # Ausgabe Werte aus Array
} # untereinander
}
else # Wert enthält keine Einzelelemente duch ";" getrennt
{ # Ausgabe Key: Wert
print "\n$key :\t $ENV{$key} \n\n";
}
}
else # Wenn der key nicht existiert
{
print "Dieser Key existiert nicht. (Vertipt?)"; }
}
print "\nNochmal? [Y]/N"; # Abfrage für aeußere Schleife
$eingabe = <STDIN>; # Eingabe n oder N beendet
chomp $eingabe;
}
print "\n\nProgrammende";
Wenn sie mehr über Perl erfahren möchten, dann clicken sie bitte hier.