OS
Linux v
PHP
5.6.30-0+deb8u1
MySQLi
5.5.57-0+deb8u1
Zeit
23:51
Zwischenspeicherung
Deaktiviert
Gzip
Deaktiviert
Benutzer
2
Beiträge
45
Anzahl Beitragshäufigkeit
317039

Badges

Who's Online

Aktuell sind 39 Gäste und keine Mitglieder online

cmd_exeEin Kursteilnehmer hat mich heute darauf aufmerksam gemacht, dass das Autovervollständigen über die TAB-Taste und die Anzeige der Historie über F7 funktioniert. Dem eingefleischten Consolenjunkie wird dabei sofort auffallen "Da gibt es doch was von Linux ...". Bereits vor geraumer Zeit wurde mal in einem TechNet-Artikel beschrieben, wie denn die Funktonalität wie oben beschrieben, erreicht werden kann. Nun damals war mir dass ehrlich gesagt einfach zu umständlich, aber mittlerweile sind diese Einstellungen offensichtlich Standart. Möchte nur mal wissen, seit wann?!
Ein Blick auf die Dateiversion von cmd.exe offenbart dann die Herkunft aus dem Servicepack 2, und dass ist ja auch schon wieder zwei Jahre her.
Nicht unerwähnt soll in diesem Artikel natürlich die neue PowerShell für Windows ab Version XP bleiben, mit der der Administrator ein mächtiges Tool in die Hand bekommt. Windows PowerShell ist eine neue, aufgabenbasierte Befehlszeilenshell und Skriptsprache für die Systemverwaltung, die eine umfassende Steuerung und Automatisierung für Windows-Desktops und -Server ermöglicht. Hier der entsprechende KB-Artikel und hier weitere Informationen zum Thema.

Aber weiter zur bekannten Commandshell von Windows. Mit der Eingabe von cmd /? erscheint der folgende Hilfetext:

Startet eine neue Instanz des Windows 2000-Befehlsinterpreters.

CMD [/A | /U] [/Q] [/D] [/E:ON | /E:OFF] [/F:ON | /F:OFF] [/V:ON | /V:OFF]
    [[/S] [/C | /K] Zeichenfolge]

/C      Führt den Befehl in der Zeichenfolge aus und endet dann.
/K      Führt den Befehl in der Zeichenfolge aus und endet dann nicht.
/S      Bestimmt Behandlung von Zeichenfolgen nach /C oder /K (siehe unten).
/Q      Schaltet die Befehlsanzeige aus.
/D      Deaktiviert die Ausführung von AutoRun-Befehlen von der Registrierung.
/A      Ausgabe interner Befehle in eine Pipe oder Datei im ANSI-Format.
/U      Ausgabe interner Befehle in eine Pipe oder Datei im UNICODE-Format.
/T:fg   Legt die Hinter-/Vordergrundfarben fest (siehe auch COLOR /?).
/E:ON   Aktiviert Befehlserweiterungen (siehe unten).
/E:OFF  Deaktiviert Befehlserweiterungen (siehe unten).
/F:ON   Aktiviert die Ergänzung von Datei- und Verzeichnisnamen.
/F:OFF  Deaktiviert die Ergänzung von Datei- und Verzeichnisnamen.
/V:ON   Aktiviert verzögerte Erweiterung von Variablen, ! wird dabei als
        Trennzeichen verwendet. Zum Beispiel wird mit /V:ON die Variable
        !var! zur Ausführungszeit erweitert. Im Gegensatz dazu wird bei
        Verwendung der Syntax var die Variable zum Zeitpunkt der Eingabe
        aufgelöst (Diese Werte können z.B. in einer FOR-Schleife
        unterschiedlich sein!).
/V:OFF  Deaktiviert die verzögerte Erweiterung von Variablen.

Hinweis: Mehrere Befehle, die durch das Befehlstrennzeichen "&&" getrennt sind, werden als Zeichenfolge akzeptiert, wenn diese von Anführungsstrichen umgeben sind. Aus Kompatibilitätsgründen hat /X die gleiche Funktion wie /E:ON, /Y hat die gleiche Funktion wie /E:OFF, und /R hat die gleiche Funktion wie /C. Alle anderen Optionen werden ignoriert.
Wird /C oder /K angegeben, wird der Rest der Befehlszeile nach der Option als Befehlszeile verarbeitet, wobei folgende Logik zur Verarbeitung des doppelten Anführungszeichens (") gilt

  1. Sind alle folgenden Bedingungen erfüllt, wird ein doppeltes Anführungszeichen auf der Befehlszeile beibehalten:
    - keine Option "/S"
    - genau zwei doppelte Anführungszeichen
    - keines der folgenden Zeichen zwischen den doppelten Anführungszeichen: &<>()@^|
    - es ist mindestens ein Leerzeichen zwischen den doppelten Anführungszeichen
    - die Zeichenfolge zwischen den doppelten Anführungszeichen ist der Name einer ausführbaren Datei
  2. Ist dies nicht der Fall, wird bei einem doppelten Anführungszeichen als erstem Zeichen sowohl dieses, als auch das letzte doppelte Anführungszeichen entfernt (und der Rest der Befehlszeile beibehalten).
    Falls /D in der Befehlszeile NICHT angegeben wurde, sucht CMD.EXE nach den folgenden Registrierungsvariablen. Sollten eine oder beide vorhanden sein, werden sie zuerst ausgeführt.
    HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun
    und/oder
    HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun
    Befehlserweiterungen sind standardmäßig aktiviert. Erweiterungen können unter Verwendung der Option "/E:OFF" für einen bestimmten Aufruf des Befehlsprozessors deaktiviert werden. Erweiterungen können auch für alle Aufrufe des Befehlsprozessors deaktivieren werden, indem einer oder beide der folgenden Werte in der Registrierung auf 0x1 oder 0x0 gesetzt werden (unter Verwendung von REGEDT32.EXE):
    HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\EnableExtensions
    und/oder
    HKEY_CURRENT_USER\Software\Microsoft\Command Processor\EnableExtensions
    Die benutzerspezifischen Einstellungen (HKEY_CURRENT_USER) haben gegenüber den Einstellungen für den Computer (HKEY_LOCAL_MACHINE) Vorrang. Befehlszeilenoptionen haben Vorrang gegenüber den Registrierungseinstellungen.

Folgende Befehle wurden durch die Befehlserweiterungen geändert bzw. erweitert:

    DEL oder ERASE
    COLOR
    CD oder CHDIR
    MD oder MKDIR
    PROMPT
    PUSHD
    POPD
    SET
    SETLOCAL
    ENDLOCAL
    IF
    FOR
    CALL
    SHIFT
    GOTO
    START (umfasst auch Änderungen an externen Befehlsaufrufen)
    ASSOC
    FTYPE

Sie erhalten weitere Informationen, indem Sie den Befehlsnamen gefolgt von "/?" eingeben.

Die verzögerte Umgebungsvariablenerweiterung ist standardmäßig NICHT aktiviert. Die verzögerte Umgebungsvariablenerweiterung kann unter Verwendung der Option
"/V:ON" oder "/V:OFF" für einen bestimmten Aufruf von CMD.EXE aktiviert bzw. deaktiviert werden. Die verzögerte Umgebungsvariablenerweiterung kann auch für alle Aufrufe des Befehlsprozessors deaktiviert werden, indem einer oder beide der folgenden Werte in der Registrierung auf 0x1 oder 0x0 gesetzt werden (unter  Verwendung von REGEDT32.EXE):
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\DelayedExpansion
und/oder
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\DelayedExpansion
Die benutzerspezifischen Einstellungen (HKEY_CURRENT_USER) haben gegenüber den Einstellungen für den Computer (HKEY_LOCAL_MACHINE) Vorrang. Befehlszeilenoptionen haben Vorrang gegenüber den Registrierungseinstellungen.
Bei aktivierter verzögerter Umgebungsvariablenerweiterung kann das Ausrufezeichen dazu verwendet werden, den Wert einer Umgebungsvariable zur Laufzeit zu ersetzen.
Die Namenergänzung für Dateien und Verzeichnisse ist standardmäßig NICHT aktiviert. Sie kann unter Verwendung der Option "/F:ON" oder "/F:OFF" für einen bestimmten Aufruf von CMD.EXE aktiviert bzw. deaktiviert werden. Die Namenergänzung kann auch für alle Aufrufe von CMD.EXE aktiviert werden, indem einer der folgenden Werte in der Registrierung auf den hexadezimalen Wert eines Steuerzeichens (z.B. "0x4" für STRG+D und "0x6" für STRG+F) für eine der beiden Funktionen gesetzt wird:
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\CompletionChar
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\PathCompletionChar
und/oder
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\CompletionChar
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\PathCompletionChar
Die benutzerspezifischen Einstellungen (HKEY_CURRENT_USER) haben gegenüber den Einstellungen für den Computer (HKEY_LOCAL_MACHINE) Vorrang. Befehlszeilenoptionen haben Vorrang gegenüber den Registrierungseinstellungen.
Wird die Namenergänzung mit der Option "/F:ON" aktiviert, werden die beiden Steuerzeichen STRG+D für die Verzeichnisnamenergänzung und STRG+F für die
Dateinamenergänzung verwendet. Um eine der beiden Namenergänzungsfunktionen
in der Registrierung zu deaktivieren, verwenden Sie den Wert für ein Leerzeichen (0x20), welches kein zulässiges Steuerzeichen darstellt.
Die Namenergänzung wird durch Eingabe eines der beiden Steuerzeichen ausgeführt. Sie fügt an die Pfadangabe links des Cursors einen Platzhalter an, wenn dieser nicht bereits vorhanden ist, und erzeugt eine Liste der Pfade, die übereinstimmen. Anschließend wird der erste Pfad angezeigt. Wurde keine Pfadübereinstimmung gefunden, ertönt lediglich ein Signalton. Durch wiederholte Eingabe des Steuerzeichens werden nacheinander die verschiedenen Pfadeinträge der Liste angezeigt. Wird zusätzlich die Umschalttaste gedrückt, werden diese in umgekehrter Reihenfolge angezeigt. Bearbeiten Sie die Zeile, wird die Liste verworfen und eine neue erstellt. Dies geschieht auch, wenn Sie zwischen den beiden Namenergänzungsfunktionen umschalten. Der einzige Unterschied zwischen den beiden Funktionen ist, dass die Dateinamenergänzung sowohl Dateien als auch Verzeichnisse, die Verzeichnisergänzung jedoch nur Verzeichnisse auflistet.  Wird die Namenergänzung zusammen mit einem der Verzeichnisbefehle (CD, MD oder RD) verwendet, wird Verzeichnisergänzung angenommen.
Die Namenergänzung funktioniert auch mit Namen, die Leerzeichen oder Sonderzeichen enthalten, wenn der Name in doppelte Anführungszeichen eingeschlossen wird. Wenn Sie den Cursor in einer Zeile nach links bewegen und die Namenergänzung an dieser Stelle ausführen, wird der Teil der Zeile, der sich rechts des Cursors befindet, ignoriert.
Die folgenden Sonderzeichen erfordern Anführungszeichen: <Leerzeichen> &()[]{}^=;!'+,`~

Kommentar schreiben


Sicherheitscode
Aktualisieren

passpict101.jpg

Heise Security

News und Hintergrund-Informationen zur IT-Sicherheit
certifications.png

Random-Test

Bubble3.png