96. Auf
dem Weg zur KI II
Einleitung
Als
Kulturseite ist die Sternenhimmelstuermerseite bemüht, im Sinne des
Alchemismus natürlich ein wenig mit Grundlagenforschung zur Entstehung
eines Humunkulus namens "künstlicher Intelligenz" beizutragen. Diese
Abhandlung heißt dementsprechend KI 2, weil die erste Abhandlung über eine Switchbatch sich mit der Emulierung von gebundenen Entscheidungen beschäftigte.
Als
Steigerung kommt nun die Antwort auf die Frage, wie man eine Batch dazu
bringt, userbezogene Eingaben zu verarbeiten und das erworbene Wissen
beim nächsten Öffnen dem User sinnbringend zur Verfügung zu stellen.
Batches
sind normalerweise dumme Stapelverarbeitungsdateien, so dass man sagen
kann, dass diese Abhandlung etwas besonderes ist: Kommunikation mit dem
User - Erlernen neuer Programme und wie sie gestartet werden und bei
gelernten Aktionen das Wissen anwenden und das Programm starten.
Es gibt nur noch eine höhere Stufe der
Intelligenz: den Affen, der einen Stock verwendet, um von einem Käfig
aus an eine Banane zu kommen und dieses ohne vorherige Anleitung aus Eigeninitiative beherrscht...
Inhaltsangabe
Funktion
der Batch
KI Batch
Erläuterung Zeile für Zeile
Problem bei doppelten Namen im Benutzerkonto lösen
Erweiterung zur Schnelllernbatch
Fazit
Funktion
der Batch
Die
KI-Batch fragt
bei jedem Öffnen
nach, ob Sie ein Programm starten soll. Wenn das Programm
durch vorherige Benutzereingabe vorhanden ist, wird das Programm
gestartet. Wenn
nicht, so wird eine Abfrage nach dem Pfad des Programmes
zur Exe (Endung für ausführbare Programme unter Winddows - kompletten Pfad mit ausführender Datei eingeben)
durchgeführt. Der Pfad wird zusammen mit Eingabenamen des Users in ein
Batchdokument abgelegt, das von unser intelligenten
Batch erstellt wird.
Danach wird das Programm gestartet. Beim nächsten Öffnen unserer KI-Batch wiederholt
sich die Anfrage, welches Programm geöffnet werden soll. Wird derselbe
Programmname, wie beim ersten Durchlauf eingegeben, so wird automatisch
die abgelegte Programmbatch gestartet. Geben Sie einen neuen
Programmnamen ein, so wiederholt sich die Verfahrensweise des
ersten Durchlaufes. Diese zweite neue Batch wird dann
wieder abgelegt und das Programm gestartet...
Beim
nächsten Öffnen haben Sie dann also schon zwei Batches im "Gedächtnis" der KI-Batch, die Sie
fakultativ durch Eingabe der von ihnen zuvor eingegebenen Programmnamen
aufrufen können. Auf diese Art und Weise richten Sie eine
unbegrenzt große "Datenbank", bestehend von unbegrenzt vielen Batches
ein, die Ihnen bei Namenseingabe des Programmes dieselbigen
Starten. Es handelt sich im übertragenen Sinne um wachsende
Intelligenz. Mit jeder neuen Hirnzelle (Batchdatei) kann die
intelligente Batch das Starten neuer Programme erlernen und wird diese
auch nie wieder vergessen.
Die Demo ist wieder rudimentär
und zweckmäßig und basiert auf einer Hand voll Befehle. Mehr ist auch
zur Schaffung von künstlicher Intelligenz nicht nötig. Keine
Datenbanken, komplizierten For-Befehle...
Sie könnten
die Batch anpassen, um z. B. einfach nur sämtliche
Windowsordner (einfach nur Ordnerpfad eingeben) zu öffnen oder mit einer Switchbatch kombinieren...
Es wären also wieder hunderte von
Möglichkeiten zur Anwendung gegeben - der Sternenhimmelstuermer belässt
es bei einer Anwendung und Abhandlung.
Genausogut
könnten Sie sich eine sogenannte Playlist erstellen oder eine
Bildersuche erstellen oder verstreute Word- oder PDF-Dokumente unter
einen beliebigen Stichwort
zusammenfassen, die dann mit einem Stichwort geöffnet werden. In diesem
Falle müssten Sie den Pfad zum Dokument mit der Dateiendung des
Dokumentes eingeben! Mit der Schnelllernbatch geht das natürlich einfacher!
Das alles
mit einer Batch!
Achtung für Anfänger, da in
der Switchbatch
- Abhandlung sämtliche Schritte zur Erstellung einer Batch stehen, hier
mal keine Anleitung zur Erstellung einer Batch - im Sinne dieser
Abhandlung - KI baut sich Schritt für Schritt auf!
KI-Batch
set /p progname= Hallo,
welches Programm willst Du heute oeffnen?
if exist %progname%.bat
goto starten
set /p pfad= Das Programm
ist mir nicht bekannt, gib mir bitte den Pfad an!
chcp 28591 > NUL
create>
%progname%.bat
Echo chcp 28591 ^> NUL >>%progname%.bat
Echo start "" "%path%" >>%progname%.bat
Echo exit >>%progname%.bat
:starten
chcp 28591 > NUL
start "" "%progname%.bat"
exit taskkill /IM cmd.exe
Erläuterung
Zeile für Zeile
set /p progname= Hallo,
welches Programm willst Du heute oeffnen?
Harter
Einstieg: set
/p ist die Aufforderung für eine Eingabe die
fortan unter dem Namen progname geführt wird (ist eine Variable für eine beliebige Eingabe). Das Gleichheitszeichen bezieht sich auf die Eingabe des Users.
Hinter dem Gleichheitszeichen wird der Text angezeigt, der sich hinter
dem Gleichheitszeichen befindet.
Dieser wird also angezeigt
und ein Eintrag eines beliebigen Namens in die cmd und einem Betätigen der Entertaste von ihnen erwartet, z. B. Internet Explorer.
Ja, Leerzeichen sind akzeptiert. Nehmen Sie ein Stichwort, dass Sie
sich gut merken können. Das muss nicht der Programmname sein, sondern ein Name, den Sie sich am besten merken können.
Die Variable wird später der Name einer neu erstellten "Gedächtnisbatch", in der der Pfad und die
Ausführung eines Programmes gespeichert wird. Einfach weiterlesen und
begreifen...
if exist %progname%.bat
goto starten
Beim
ersten Durchlauf der Batch existiert kein Programmname. Das Gedächtnis
ist Leer. Würde beim zweiten Durchlauf eine Internet explorer.bat
existieren (die wird im weiteren Verlauf noch erstellt), dann
würde die Batch bis zum Wort :starten die folgenden Zeilen überspringen
- wird bald klarer. Übersetzt: Wenn ihre Eingabe existiert, dann
springe zu dem Wort :starten.
set /p pfad= Das Programm
ist mir nicht bekannt, gib mir bitte den Pfad an!
Existiert
also keine Batch, die identisch mit dem Eingabewort ist, dann wird nun
eine zweite Eingabe erwartet, die sich nun pfad schimpft. Hier wird der
Pfad eingetragen, z. B. "C:\Program Files\Internet
Explorer\iexplore.exe" ohne Anführungszeichen für den Internetexplorer oder C:\ für Öffnung
des Ordners c:\
oder den Pfad zu einem Dokument (das dann mit dem als Standardanwendung
definierten Programm
in windows 7 geöffnet wird - bei einigen Programmen wie Zune von
Microsoft klappt das nicht). Beim Pfad zu einem Dokument oder einer
Musikdatei dürften Sie aber nicht vergessen, die Dateiendung (z. B.
C:\xxx.pdf) einzugeben.
Wir
haben nun zwei Variablen erzeugt, die uns den Rest der Batch verfolgen
werden. Die Kommandozeile merkt sich also ihre beiden Eingaben unter
den Namen der nun definierten variablen pfad
und progname.
Für die Variablen könnten Sie natürlich auch jeden anderen Namen
einsetzen...Sie müssten dann in den folgenden Zeilen der Batch auch
diesen neuen Namen jeweils an entsprechender Stelle ersetzen.
chcp 28591 > NUL ist die Zeile, falls ein ü, ä oder ö im Dateinamen ist.
Diese Zeile berücksichtigt ü, ä und ö. Damit kann der Programmname der Batch, die in der nächsten Zeile erstellt wird, auch schöner Explorer lauten.
create>
%progname%.bat
Ob
sie create
oder dummy einsetzen - egal. Es geht nur darum die CMD
(Kommandozeile) dazu zu bringen etwas auszuwerfen. Wir erstellen gerade
eine Batch mit der typischen Endung *.bat. Davor steht die erste
Eingabe (variabel des Programmnamens, eben %progname%) mit zwei Prozentzeichen umgeben.
Die Batch wird
relativ zur KI-Batch erstellt - im selben Ordner vers in diesem Fall.
Im
Falle des Eintrages
Internet explorer heißt die neu erstellte Erinnerungsbatch
nun Internet
Explorer.bat .
Echo chcp 28591 ^> NUL >>%progname%.bat
Echo start "" "%path%" >>%progname%.bat
Echo exit >>%progname%.bat
Die
nächsten drei Zeilen füllen die Batch mit Leben. >>
heißt, dass die erste oder nächste Zeile in die neu erstellte Batch eingetragen wird.
Der
Pfad zur %progname%.bat
steht in Anführungszeichen und bezieht sich auf den Ordner
vers,
den Sie anlegen sollten, damit die Batch läuft. Fakultativ müssten Sie
nun hier den Pfad ändern, in der die Batch liegt, wenn Sie die Batch in einem anderen Pfad anlegen..
.
Userprofile
ist eine Systemvariable, damit Sie nicht umständlich den Pfad anpassen
müssen.
chcp 28591 ^> NUL
ist wieder die Zeile, falls ein ü, ä oder ö im Dateinamen ist. Das
Ausgabezeichen muss mit einem Pipezeichen neutralisiert werden ^>, damit es ausgedruckt und nicht ausgeführt wird!
Einschub: Escape: Bei den Zeichen: & | ( ) < > ^ müssen Sie Sie ein ^
Carat-zeichen vor dem Zeichen einfügen, wenn Sie es als gedruckten Text
verwenden wollen. In unserem Fall wollen wir einen Text mit einer
definierten Funktion als Text exportieren. Das Escape-Zeichen entbindet
die eben genannten Zeichen von ihrer Funktion und das ist in diesem
Falle gut so!
%progname%.bat
ist schließlich die o. a. Datei, in unserem Beispielfall Internet Explorer.bat.
Das,
was hinter dem Echo steht, wird eingetragen. In der ersten Zeile also start "" "%pfad%",
was nichts weiter heißt, dass das Programm im eingegebene Pfad gestartet wird.
Dieser
Befehl ist Klasse! Was auch immer zwischen den beiden Anführungszeichen
steht - hier mit der Variable %pfad%, die für ihre zweite Eingabe steht
- wird ausgeführt.
Deshalb können Sie bei der Eingabe den Pfad
einfach nur zu einem Ordner legen. Er wird geöffnet. Dasselbe gilt auch
für ein Dokument oder eine Musikdatei, bei denen dann anhand der
Dateiendung das Programm geöffnet wir, dass in Windows 7 als
Standardanwendung eingetragen ist: z. B. C:\xxx.pdf öffnet das PDF-Dokument im Ordner C\:
In
der zweiten Zeile wird exit eingetragen. zum Beenden und Schließen des
Fensters.
Also liegt im Ordner vers zu diesem
Zeitpunkt eine neue Batch. Im Falle vom Internet Explorer.bat
wird also der Inhalt sein:
chcp 28591 > NUL
start "" "C:\Program Files\Internet
Explorer\iexplore.exe"
exit
:starten
Wie
bereits gesagt: Nachdem die Internet Explorer.bat erstellt wurde, ist
Sie im Bestand des Gedächtnis der KI. Geben Sie nun ab dem zweiten
Durchlauf der KI-Batch nach der Anfrage, welches Programm Sie öffnen
wollen, Internet
Explorer ein, dann wird der if exist Befehl aktiv, da bereits
eine Batch mit dem Namen Internet Explorer.bat besteht. Das weiß nun
unsere KI-Batch und springt gleich zum Wort :starten, um ihr "erlerntes
Wissen" anzuwenden und das Programm mit der nächsten Zeile zu starten.
start "" "%progname%.bat"
Es wird also die Batch Internet.explorer.bat
gestartet. Der Internetexplorer öffnet sich. Egal, ob die Batch gerade
erstellt wurde oder schon im Gedächtnis verankert ist durch einen
früheren Durchlauf.
exit taskkill /IM cmd.exe
Diese
Zeile dürfte selbst hartgesottene Kommandozeilenprofis befremden. Sie
funktioniert aber zu 100%!
Wir schließen die
Kommandozeile mit dem Exit-Befehl und Beenden mit Taskkill das Programm
(IM steht für Kurzform des Pfades bei bekannten Anwendungen - hier die
CMD (Kommandozeile)).
Warum diese komische Schreibweise? Man
kriegt ansonsten nicht ein Kommandozeilenfenster am Ende der Ausführung
geschlossen. Probieren Sie mal andere Kombinationen aus. Selbst der
Sternenhimmelstuermer brauchte eine Zeit, bis er diesen Trick
entwickelte....
Das war es dann auch schon.
Fehlerquellen:
Sie müssen den ganzen Pfad samt ausführende Datei eingeben. Den Pfad
kopieren Sie am besten, indem Sie mit der rechten Maustaste bei
gedrückter nach oben Taste im Eigenschaftsmenü Pfad kopieren auswählen.
Problem bei doppelten Namen im Benutzerkonto auf Dos-Ebene Lösen
Bei Doppelnamen als User werden Sie Probleme beim Pfad als User
zu Dateien auf ihren Desktop bekommen. Da man sich sowieso zwei
Benutzerkonten zulegen sollte, müssten Sie darauf achten, dass ein
Konto einen knackigen einsilbigen hat. Es geht aber auch anders:
Problembeschreibung:
In unserer KI-Batch wird ein Eingabepfad zur Datei erwartet. Leider ist
die cmd innerhalb der Verarbeitung des Pfades zur ausführenden Datei
bei dem Doppelnamen im Benutzerkonto nicht mehr fähig den Pfad zu
finden. Auch mit Umgehung der Variable %userprofile% gibt es dieses
Problem, da einerseits eine neue Batch erstellt wird und andererseits
das Programm sofort gestartet werden soll.
Der
Desktop ist bekanntlich ein Unterverzeichnis vom Benutzerkonto mit dem
Pfad (für Doppelnamen des Benutzerkontos):
C:\Users\zweistelliger Benutzerkontoname\Desktop
Die Variable %userprofile% entspricht diesem Pfad. Bei der Eingabe von dem Pfad C:\Users\Manfred xxxxxx\Desktop\vers\xxx.pdf bei der Abfrage erhalten Sie die Fehlermeldung: Der Pfad "C:\Users\Manfred xxxxxx\Desktop\vers\xxx.pdf wurde nicht gefunden" beim Versuch der Speicherung eines Pfades zum PDF.
Lösung
Der
Sternenhimmelstuermer bietet hier eine universelle Lösung an:
Gehen Sie im Explorer zu c:users (Laufwerk C: - Benutzer).
Dort öffnen Sie die Kommandozeile, in dem Sie auf leerer Fläche im
Fenster mit rechter Maustaste bei gleichzeitigen Drücken der
Großschreibtaste das Eigenschaftsmenü öffnen. Dort wählen Sie aus:
Kommandozeile hier öffnen.
In die Kommandozeile geben Sie dir /x ein
Nun können Sie in der Auflistung sehen, welcher Name des Ordners auf DOS-Ebene vergeben wurde. Beim Sternenhimmelstuermer z. B. MANFRE~1.
Das steht für den Doppelnamen Manfred xxxxxx.
Das
Schema ist eigentlich immer dasselbe: Sechs Zeichen und Tildezeichen und
1. Das kann natürlich leicht varieren, wenn z. B. zweimal Ordner
existieren , die mehr als sechs Zeichen haben und gleich sind oder die
Leerzeichen schon nach drei Buchstaben gesetzt sind. Deshalb immer zur
Sicherheit nochmal nachfragen.
Danach können Sie dann den Pfad bei der Angabe des Pfades anpassen, also hier als Beispiel: C:\Users\MANFRE~1\Desktop\vers\xxx.pdf
bei
der Aufforderung zur Eingabe für ein PDF-Dokument. Dieser Pfad wird
auch 1:1 in die neu erstellte KI-Gedächtnisbatch übertragen.
Hintergrund
Das
Problem mit der DOS-Konfirmität ist leider vielen Batchschreibern nicht
so bewußt. Auf dem eigenen PC funktioniert die Batch dann auch, aber
auf anderen mit Doppelnamen im Benutzerkonto und damit Desktop und
Unterordner nicht. Der Sternenhimmelstuermer stößt in Abständen beim
Batchschreiben auf dieses Problem. Eine eindeutige Schwäche seit
mehreren Generationen von Windows. Noch perfider ist es, das manchmal
die Batch dann wieder funktioniert, um im nächsten Durchlauf wieder mit
Fehlermeldungen oder bei der u. a. Schnellernbatch dann überhaupt keine
Fehlermeldungen abzugeben und eben einfach nicht zu funktionieren.
%userprofile
hilft Ihnen bei der Pfadeingabe direkt ins Dosfenster bei der
Pfadeingabe auch nicht weiter, da die Variable in diesem
Spezialfall für genau den Pfad steht, den die cmd, die beim Ausführen im Dos-Modus arbeitet, nicht oder nur manchmal versteht...
Kommt
der Befehl von der Batch, so wird er hingegen meistens richtig
interpretiert und der Pfad fast immer richtig behandelt. Akzeptieren
Sie das einfach so.
Bei der u. a. Schnelllernbatch würde der abgefragte Pfad zu einem Verzeichnis in der Art: C:\Users\MANFRE~1\Desktop\vers von Ihnen eingetragen werden bei dem Ordner vers und oben angegebenen Beispielnamen.
Erweiterung zur Schnelllernbatch
Vielleicht
können sich die älteren Leser noch an den Fernsehfilm "der Mann der
tausend Eigenschaften" erinnern. Dieser konnte per Computerübertragung
für 72 Stunden komplette Abläufe wie Rennfahren, fremde Sprachen oder
was auch immer lernen. Unser KI-Batch können wir selbstverständlich mit
ein paar Zeilen Code mehr beibringen, das Gedächtnis schlagartig zu
erweitern. Das spart ihnen z. B. bei tausend Dokumenten den Namen und
Pfad einzutragen.
Erinnern Sie sich?
In der Einleitung sagte der Sternenhimmelstuermer, dass Batches
normalerweise dumme Stapelverarbeitungsdateien sind. Genau diese
Eigenschaft machen wir uns nun zu Nutze:
Die Änderungen im Programmcode sind rot , der Rest blau.
Die
Batch hat nun die Alternative dem User Arbeit abzunehmen, wenn Ihnen
die Dateibezeichnung als Stichwort reicht. Die erste Frage ändert sich
dahingehend, ob Sie der Batch etwas beibringen wollen. Geben Sie das
Wort lernen ein, so springt die Datei in der zweiten Zeile mit einem
goto Befehl zum Batchende.
Hier wird die Dateiendung (jpg, pdf,
docx...) abgefragt. Diese geben Sie ohne Punkt vor der Dateiendung ein.
Danach
wird für jedes Dokument mit der betreffendenen Dateiendung in diesem
Verzeichnis jeweils eine Gedächtnis-Batch angelegt. Geben Sie dann beim
nächsten Durchlauf wie gewohnt den Dokumentennahmen an, öffnet sich das
Programm durch die Starterbach. Es wurde also nur schlagartig das
Gedächtnis der KI-Batch erweitert.
Schnellern.bat
set /p progname= Hallo, welches Programm willst Du oeffnen oder mir etwas beibringen?
if %progname%==lernen goto lernen
if exist %progname%.bat goto starten
set /p pfad= Das Programm ist mir nicht bekannt, gib mir bitte den Pfad an!
chcp 28591 > NUL
create> %progname%.bat
Echo chcp 28591 ^> NUL >>%progname%.bat
Echo start "" "%path%" >>%progname%.bat
Echo exit >>%progname%.bat
:starten
chcp 28591 > NUL
start "" "%progname%.bat"
exit taskkill /IM cmd.exe
:lernen
set /p datende= An welche Dateiendungen soll ich mich erinnern?
set /p verpfad= Gib mir bitte den Pfad an zum Verzeichnis an!
chcp 28591 > NUL
dir /b %verpfad%\*.%datende% >tmp.txt
for
/F "delims=. tokens=1" %%a in (tmp.txt) do vo >%%a.bat &
>>"%%a.bat" Echo chcp 28591 ^> NUL &
>>"%%a.bat" Echo start "" "%verpfad%\%%a.%datende%"
& >>"%%a.bat" Echo exit
del tmp.txt
exit
Quellcode kurz und knapp erklärt:
if %progname%==lernen goto lernen
Diese Zeile vergleicht nur, ob Sie das Wort lernen zuvor eingegeben haben. Ist ein einfacher wenn - Befehl: Wenn (if) die letzte Eingabe (%progname%) das Wort lernen ist (== bei Vergleichen zwei Gleichheitzeichen), dann gehe (goto) zum Wort lernen
Dann kommt wieder der bekannte Code, der übersprungen wird, wenn der User lernen eingibt!
set /p datende= An welche Dateiendungen soll ich mich erinnern?
set /p verpfad= Gib mir bitte den Pfad an zum Verzeichnis an!
Es
wurden zwei Variablen für die Eingaben definiert. Die heißen eben in
diesem Fall so, wie es später eingefügt wird. Auch das ist nichts
wirklich neues...
chcp 28591 > NUL
wurde bereits erklärt. Es ist sonst ganz schön ärgerlich, wenn
Dateienamen mit ü, ä oder ö falsch erfaßt und damit unbrauchbar
werden...
dir /b %verpfad%\*.%datende% >tmp.txt
Der Dir - Befehl listet nun brav im Verzeichnispfad (%verpfad%), wo die Dateien mit der Dateiendung (%datende% ) liegen, sämtliche (*.) Namen der Dokumente mit Dateiendung (Parameter: /b) in einem neu erstellten Textdokument (tmp.txt) auf.
Dieses ist eine Zeile!!!
for
/F "delims=. tokens=1" %%a in (tmp.txt) do vo >%%a.bat &
>>"%%a.bat" Echo chcp 28591 ^> NUL &
>>"%%a.bat" Echo start "" "%verpfad%\%%a.%datende%"
& >>"%%a.bat" Echo exit
Die
Reihe ist für die Stapelverarbeitung notwendig. Sieht kompliziert aus,
aber erstellt nur eine Batch für jeden Eintrag aus der Liste der
zuvor neu erschaffenden Textdatei:
1. Teil der Zeile for /F "delims=. tokens=1" %%a in (tmp.txt) do vo
Der For Befehl ist schwierig, obwohl in der Windowshilfe der cmd (for /? in cmd) bestens dokumentiert.
Übersetzt heißt das: Nehme jede Zeile (for
/F) des eben erstellten Textdokumentes (in (tmp.txt)) , isoliere den ersten Textteil (tokens=1) vor einem Punkt (delims=.). Dieser wird zur Variablen (%%a) für jede Zeile in dem Textdokument.
Dann tue (do) damit nichts (vo).
Ja, da könnte wieder für nichts auch dummy stehen. Das ist für Experten
sicherlich auch nicht verständlich, aber für den Sternenhimmelstuermer
normal. Er will nur eine Reihe mit Textdokumenten mit Variablen
erstellen.
Die zweite hälfte wird erst interessant: >%%a.bat &
>>"%%a.bat" Echo chcp 28591 ^> NUL &
>>"%%a.bat" Echo start "" "%verpfad%\%%a.%datende%"
& >>"%%a.bat" Echo exit
Erinnern
Sie sich? Wir haben drei Variablen, mit denen wir nun arbeiten. Dazu
erstellen wir statt eines Dokumente nun eine Batch (%%a.bat).
Die Variable steht nun aber dank des
Stapelverarbeitungsprogrammes für alle Zeilen des Textdokumentes minus
der Dateiendung. Durch > wird also die Ausgabe
in soviel Dokumente bewirkt, wie es Zeilen im Ursprungstext (tmp.txt)
bzw. Dateien im Ursprungsverzeichnis gibt.
Dadurch dass wir ein und
(&) benutzen, können wir wieder beliebig viele Zeilen Text in diese
Dokumente eintragen. In jedem folgenden Befehl kommt wieder in der
Pfadangabe das Schlüsselwort der Variablen %%a:
Trage doch den Befehl in alle Dokumente ein, die als Variable gerade
definiert wurden. Ansonsten sind die Programmzeilen fast total
identisch, wie die zum Erstellen einer Batch im blauen Bereich - also
nichts besonderes...
del tmp.txt
Wir brauchen das Textdokument nun nicht mehr und zerstören es.
exit
Fertig
ist der Schnelllernkurs für die Batch. Im nächsten Durchlauf geben Sie
nun einfach den Namen des Bildes oder Dokuments ein. Die Ki-Batch
findet die Anwendung und startet Sie!
Fehlerquellen: Hat Ihr
Benutzerkonto einen Doppelnamen, so ist der Desktop oder Unterordner
davon ohne Anpassung Tabu. Das hat was damit zu tun, dass Dos nur acht Zeichen kann.
Bei einem Doppelnamen mit Leerzeichen läuft das selbst mit
Systemvariablen nicht rund.
Sie können den Pfad jedoch anpassen, wie es im Kapitel : Doppelnamen im Benutzerkonto ausführlich beschrieben wurde.
Fazit
KI
wird in ihren Batchformen noch eine Weile beherrschendes Thema sein,
aber für eine ernsthafte Umsetzung reichen die Kenntnisse des
Sternenhimmelstuermers nicht aus. Egal, es springen dabei ein paar
schöne Projekte heraus. Mit neun Zeilen (Spracherweiterung für ü, ä usw. nicht mitgezählt, sonst 12 Zeilen) und auch
nicht vielmehr Befehlen aus dem DOS für Beginner - eine bemerkenswerte
Leistung.
Der
Sternenhimmelstuermer rechnet im
Hintergrund auf der Metaebene mit: Für die Experten der KI-Forschung
vielleicht interessant: Dezentrale Ablagesysteme mit der Fähigkeit
Aktionen zu starten von einer zentralen Einheit aus ist vielleicht ein
effektiverer Ansatz auf dem Weg zur KI. Das ergibt so eine Art
Bewußtsein, dass durch das Unterbewußte gesteuert wird. Kombiniert man
das mit einer Switchbatch hat man die Möglichkeit gebundene
Entscheidungen zu treffen, die durch eine höhere Instanz reguliert
werden, ohne das die dezentralen Einheiten wissen, dass Sie nur eine
Matrix der zentralen Einheit sind. Das menschliche Gehirn arbeitet
schließlich auch so, jedenfalls ist dem Sternenhimmelstuermer noch
nicht bekannt, dass unser Gehirn Tabellen anlegt - eher scheinbar
unkoordinierte neuronale Verknüpfungen, deren Ablagesystem dem dieser
Batch nicht unähnlich ist ..und damit beginnt die KI!
Und
der Sternenhimmelstuermer machte gerade einen Quantensprung - er
entdeckte gerade beim Googlen zwischendurch eine Befehlskombination für
sich neu, die er lange als Mosaikstein unbewußt suchte - peinlich genug
- es handelt sich um den einfachen Befehl if else. Damit dürfte die
nächste KI-Abhandlung folgen, aber später zur Zeit herrscht beim
Sternenhimelstuermer übermäßige Gedankenflut, dass ist einfach nur
anstrengend...
Nachtrag:
Der Sternenhimmelstuermer brachte der Batch ü,ö und ä bei, was den
Quellcode erheblich aufbläht, aber sonst zu Gedächtnisfehlfunktionen
führt.