Home » Best Choice da die ausführung von skripts auf diesem system deaktiviert ist New Update

Best Choice da die ausführung von skripts auf diesem system deaktiviert ist New Update

by Tratamien Torosace

You are viewing this post: Best Choice da die ausführung von skripts auf diesem system deaktiviert ist New Update

Siehe Thema da die ausführung von skripts auf diesem system deaktiviert ist


Table of Contents

SQLCMD-Hilfsprogramm – SQL Server | Microsoft Docs Update New

2022-03-22 · In diesem Artikel. Gilt für: SQL Server (alle unterstützten Versionen) Azure SQL-Datenbank Azure SQL verwaltete Instanz Azure Synapse Analytics Analytics Platform System (PDW) Informationen zu SQL Server 2014 und niedrigeren Versionen finden Sie unter sqlcmd-Hilfsprogramm.. Informationen zur Verwendung von sqlcmd unter Linux finden Sie unter …

+ mehr hier sehen

Read more

Inhaltsverzeichnis

SQLCMD-Dienstprogramm

Artikel

31.03.2022

35 Minuten Lesezeit

36 Mitwirkende Ist diese Seite hilfreich? Ja Nein Haben Sie weiteres Feedback für uns? Feedback wird an Microsoft gesendet: Wenn Sie auf die Schaltfläche „Senden“ klicken, wird Ihr Feedback zur Verbesserung von Microsoft-Produkten und -Diensten verwendet

Datenschutzrichtlinie Absenden Vielen Dank.

In diesem Artikel

Gilt für: SQL Server (alle unterstützten Versionen) Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Informationen zu SQL Server 2014 und niedrigeren Versionen finden Sie unter sqlcmd-Dienstprogramm

Informationen zur Verwendung von sqlcmd unter Linux finden Sie unter Installieren von sqlcmd und bcp unter Linux

Mit dem Dienstprogramm sqlcmd können Sie Transact-SQL-Anweisungen, Systemprozeduren und Skriptdateien in verschiedenen Modi eingeben:

An einer Eingabeaufforderung.

Im Abfrage-Editor im SQLCMD-Modus.

Im SQLCMD-Modus

In einer Windows-Skriptdatei.

In einem Auftragsschritt eines SQL Server-Agent-Auftrags für ein Betriebssystem (Cmd.exe).

Das Dienstprogramm verwendet ODBC, um Transact-SQL-Batches auszuführen.

Laden Sie sqlcmd herunter und installieren Sie es

Windows

Laden Sie Microsoft Command Line Utilities 15 für SQL Server (x64) (2,6 MB) herunter

Laden Sie Microsoft Command Line Utilities 15 für SQL Server (x86) (2,3 MB) herunter

Die Befehlszeilentools sind allgemein verfügbar (GA), werden aber mit dem Installationspaket für SQL Server 2019 (15.x) veröffentlicht.

Versionsinformationen

Versionsnummer: 15.0.2

Build-Nummer: 15.0.2000.5

Veröffentlichungsdatum: 11

September 2020

Die neue Version von SQLCMD unterstützt Azure AD-Authentifizierung, einschließlich Multi-Factor Authentication (MFA)-Unterstützung für SQL-Datenbank, Azure Synapse Analytics und Always Encrypted-Funktionen

Das neue BCP unterstützt Azure AD-Authentifizierung, einschließlich Multi-Factor Authentication (MFA)-Unterstützung für SQL-Datenbank und Azure Synapse Analytics.

Systemanforderungen: Windows 10, Windows 7, Windows 8, Windows 8.1, Windows Server 2008-2022.

Diese Komponente erfordert sowohl den integrierten Windows Installer 5 als auch den Microsoft ODBC-Treiber 17 für SQL Server 17

Linux/macOS

Anweisungen zum Installieren von sqlcmd unter Linux und macOS finden Sie unter Installieren von sqlcmd und bcp unter Linux

Überprüfung der Version

Führen Sie zum Überprüfen der SQLCMD-Version den Befehl sqlcmd -? und vergewissern Sie sich, dass es sich um Version 15.0.2000.5 oder höher handelt

Hinweis Sie benötigen mindestens Version 13.1, um Always Encrypted ( -g ) und Azure Active Directory-Authentifizierung ( -G ) zu unterstützen

Auf Ihrem Computer sind möglicherweise mehrere Versionen von sqlcmd.exe installiert

Stellen Sie sicher, dass Sie die richtige Version verwenden

sqlcmd ausführen -? um die Version zu ermitteln.

Vorinstalliert

Azure Cloud Shell

Sie können das Dienstprogramm sqlcmd von Azure Cloud Shell testen, das standardmäßig vorinstalliert ist: Starten Sie Cloud Shell

Azure Data Studio

Wählen Sie „SQLCMD aktivieren“ auf der Editor-Symbolleiste aus, um sqlcmd-Anweisungen in Azure Data Studio auszuführen

SQL Server Management Studio (SSMS)

Um sqlcmd-Anweisungen in SSMS auszuführen, wählen Sie im oberen Navigationsbereich im Dropdown-Feld des Abfragemenüs die Option SQLCMD-Modus aus

Wichtig SQL Server Management Studio (SSMS) verwendet den Microsoft. NET Framework SqlClient, um im regulären Modus und im SQLCMD-Modus im Abfrage-Editor ausgeführt zu werden

Beim Ausführen von sqlcmd über die Befehlszeile verwendet sqlcmd den ODBC-Treiber

Da möglicherweise andere Standardoptionen gelten, sehen Sie möglicherweise ein unterschiedliches Verhalten, wenn Sie dieselbe Abfrage in SQL Server Management Studio im SQLCMD-Modus und im sqlcmd-Dienstprogramm ausführen.

Syntax

Derzeit erfordert sqlcmd kein Leerzeichen zwischen der Befehlszeilenoption und dem Wert

In einer zukünftigen Version kann jedoch ein Leerzeichen zwischen der Befehlszeilenoption und dem Wert erforderlich sein

Ausführlichere Informationen zur Syntax und Verwendung von sqlcmd finden Sie unter:

sqlcmd -a packet_size -A (dedizierte Administratorverbindung) -b (Batch-Job beenden, wenn ein Fehler auftritt) -c batch_terminator -C (dem Serverzertifikat vertrauen) -d db_name -D -e (Echo-Eingabe) -E (vertrauenswürdig Verbindung) -f Codepage | i:Codepage[,o:Codepage] | o:codepage[,i:codepage] -g (Spaltenverschlüsselung aktivieren) -G (Azure Active Directory zur Authentifizierung verwenden) -h rows_per_header -H Workstation_name -i input_file -I (Bezeichner in Anführungszeichen aktivieren) -j (unformatierte Fehlermeldungen drucken) -k[1 | 2] (Steuerzeichen entfernen oder ersetzen) -K application_intent -l login_timeout -L[c] (Server auflisten, optional saubere Ausgabe) -m error_level -M multisubnet_failover -N (Verbindung verschlüsseln) -o output_file -p[1] (print Statistik, optionales Doppelpunktformat) -P Passwort -q “Befehlszeilenabfrage” -Q “Befehlszeilenabfrage” (und beenden) -r[0 | 1] (msgs to stderr) -R (regionale Einstellungen des Clients verwenden) -s col_separator -S [protocol:]server[instance_name][,port] -t query_timeout -u (Unicode-Ausgabedatei) -U login_id -v var = ” value” -V error_severity_level -w column_width -W (Entfernen von Leerzeichen am Ende) -x (Variablensubstitution deaktivieren) -X[1] (Befehle, Startskript, Umgebungsvariablen, optionales Beenden deaktivieren) -y variable_length_type_display_width -Y fixed_length_type_display_width -z new_password – Z neues_passwort (und beenden) -? (Verwendungszweck)

Befehlszeilenoptionen

Registrierungsprozesse

-EIN

Meldet sich über eine dedizierte Administratorverbindung (DAC) bei SQL Server an

Diese Art der Verbindung wird verwendet, um Serverprobleme zu beheben

Diese Verbindung funktioniert nur mit Servercomputern, die DAC unterstützen

Wenn DAC nicht verfügbar ist, generiert sqlcmd eine Fehlermeldung und wird dann beendet

Weitere Informationen zu DAC finden Sie unter Diagnoseverbindung für Datenbankadministratoren

Die Option -A wird nicht mit der Option -G unterstützt

Um mit der Option -A eine Verbindung zur SQL-Datenbank herzustellen, müssen Sie ein SQL Server-Administrator sein

DAC ist für Azure Active Directory-Administratoren nicht verfügbar

-C

Dieser Schalter wird vom Client verwendet, um ihn so zu konfigurieren, dass er dem Serverzertifikat ohne Überprüfung implizit vertraut

Diese Option entspricht der ADO.NET-Option TRUSTSERVERCERTIFICATE = true.

-ddb_name

Gibt eine USE USE-Anweisung aus, wenn Sie sqlcmd starten

Diese Option legt die sqlcmd-Skriptvariable SQLCMDDBNAME fest

Dieser Parameter gibt die Startdatenbank an

Der Standardwert ist die standardmäßige Datenbankeigenschaft der Anmelde-ID

Wenn die Datenbank nicht existiert, wird eine Fehlermeldung generiert und sqlcmd wird beendet

-D

Interpretieren Sie den an -S übergebenen Servernamen als DSN statt als Hostnamen

Weitere Informationen finden Sie unter Verbindung mit sqlcmd im Abschnitt DSN-Unterstützung in sqlcmd und bcp

Hinweis Die Option -D ist nur für Linux- und MacOS-Clients verfügbar

Auf Windows-Clients bezeichnete dies zuvor eine jetzt veraltete Option, die entfernt und ignoriert wurde.

-llogin_timeout

Gibt die Anzahl der Sekunden an, die beim Herstellen einer Verbindung zu einem Server vergehen sollen, bevor eine sqlcmd-Anmeldung beim ODBC-Treiber das Zeitlimit überschreitet

Diese Option legt die sqlcmd-Skriptvariable SQLCMDLOGINTIMEOUT fest

Das standardmäßige sqlcmd-Anmeldezeitlimit beträgt acht Sekunden

Wenn Sie die Option „-G“ verwenden, um eine Verbindung mit SQL-Datenbank oder Azure Synapse Analytics herzustellen und sich mithilfe von Azure Active Directory zu authentifizieren, wird ein Timeoutwert von mindestens 30 Sekunden empfohlen

Der Zeitüberschreitungswert für den Anmeldezeitraum muss eine Zahl zwischen 0 und 65534 sein

Wenn der angegebene Wert kein numerischer Wert ist oder außerhalb dieses Bereichs liegt, generiert sqlcmd eine Fehlermeldung

Ein Wert von 0 gibt eine unbegrenzte Wartezeit an

-E

Verwendet eine vertrauenswürdige Verbindung anstelle eines Benutzernamens und Kennworts, um sich bei SQL Server anzumelden

Standardmäßig verwendet sqlcmd die vertrauenswürdige Verbindung, wenn -E nicht angegeben ist

Die Option -E ignoriert mögliche Umgebungsvariableneinstellungen für Benutzernamen und Kennwörter, wie z

B

SQLCMDPASSWORD

Wenn die Option -E zusammen mit der Option -U oder der Option -P verwendet wird, wird eine Fehlermeldung generiert

-g

Legt die Spaltenverschlüsselungseinstellung auf Aktiviert fest

Weitere Informationen finden Sie unter Always Encrypted

Es werden nur Hauptschlüssel unterstützt, die im Windows-Zertifikatspeicher gespeichert sind

Der Schalter -g erfordert mindestens sqlcmd Version 13.1

Um die Version zu ermitteln, führen Sie sqlcmd -? aus.

-G

Diese Option wird vom Client beim Herstellen einer Verbindung mit SQL-Datenbank oder Azure Synapse Analytics verwendet, um anzugeben, dass der Benutzer mithilfe der Azure Active Directory-Authentifizierung authentifiziert werden soll

Diese Option setzt die sqlcmd-Skriptvariable „SQLCMDUSEAAD = true“

Der Schalter -G erfordert mindestens sqlcmd Version 13.1

Um die Version zu ermitteln, führen Sie sqlcmd -? das Ende

Weitere Informationen finden Sie unter Herstellen einer Verbindung mit SQL-Datenbank oder Azure Synapse Analytics mithilfe der Azure Active Directory-Authentifizierung

Die Option -A wird nicht mit der Option -G unterstützt

Wichtig Die Option „-G“ gilt nur für Azure SQL-Datenbank und Azure Synapse Analytics

Die interaktive AAD-Authentifizierung wird derzeit nicht unter Linux oder macOS unterstützt

Die integrierte AAD-Authentifizierung erfordert den Microsoft ODBC-Treiber 17 für SQL Server 17.6.1 oder höher und eine ordnungsgemäß konfigurierte Kerberos-Umgebung

Benutzername und Kennwort für Azure Active Directory: Wenn Sie einen Benutzernamen und ein Kennwort für Azure Active Directory verwenden, geben Sie die Option -G zusammen mit dem Benutzernamen und dem Kennwort an, indem Sie die Optionen -U und -P angeben

Sqlcmd -S testsrv.database.windows.net -d Target_DB_or_DW -U [email protected] -P MyAADPassword -G Der Parameter -G generiert die folgende Verbindungszeichenfolge im Back-End: SERVER = Target_DB_or_DW.testsrv.database.windows

net;UID= [email protected];PWD=MyAADPassword;AUTHENTICATION = ActiveDirectoryPassword

Integrierte Azure Active Directory-Authentifizierung Wenn Sie die integrierte Azure Active Directory-Authentifizierung verwenden möchten, geben Sie die Option -G ohne Benutzername und Kennwort an

Die integrierte AAD-Authentifizierung erfordert den Microsoft ODBC-Treiber 17 für SQL Server 17.6.1 oder höher und eine ordnungsgemäß konfigurierte Kerberos-Umgebung

Sqlcmd -S Target_DB_or_DW.testsrv.database.windows.net -G Dies erzeugt die folgende Verbindungszeichenfolge im Backend: SERVER = Target_DB_or_DW.testsrv.database.windows.net Authentication = ActiveDirectoryIntegrated; Trusted_Connection=NO Hinweis Die Option -E (Trusted_Connection) kann nicht mit der Option -G verwendet werden.

Interaktives Azure Active Directory Die interaktive Azure AD-Authentifizierung für Azure SQL-Datenbank und Azure Synapse Analytics ermöglicht Ihnen die Verwendung einer interaktiven Methode, die die mehrstufige Authentifizierung unterstützt

Weitere Informationen finden Sie unter Interaktive Active Directory-Authentifizierung

Die interaktive Azure AD-Authentifizierung erfordert sqlcmd-Version 15.0.1000.34 oder höher und ODBC-Version 17.2 oder höher

Um die interaktive Authentifizierung zu aktivieren, geben Sie die Option -G nur mit dem Benutzernamen (-U) und ohne Kennwort an

Im folgenden Beispiel werden Daten im interaktiven Azure AD-Modus exportiert

Dies gibt einen Benutzernamen an, der ein AAD-Konto darstellt

Dies ist das gleiche Beispiel, das im vorherigen Abschnitt verwendet wurde: Azure Active Directory-Benutzername und -Kennwort

Im interaktiven Modus muss ein Passwort manuell eingegeben werden

Für Multi-Faktor-Authentifizierungskonten müssen Sie Ihre konfigurierte MFA-Authentifizierungsmethode vervollständigen

sqlcmd -S testsrv.database.windows.net -d Target_DB_or_DW -G -U [email protected] Der vorherige Befehl generiert die folgende Verbindungszeichenfolge im Backend: SERVER = Target_DB_or_DW.testsrv.database.windows.net;UID= [email protected]; AUTHENTICATION = ActiveDirectoryInteractive Wenn ein Azure AD-Benutzer ein Benutzer einer Verbunddomäne ist, der ein Windows-Konto verwendet, enthält der in der Befehlszeile erforderliche Benutzername sein Domänenkonto (siehe unten [email protected]): sqlcmd -S testsrv.database.windows.net – d Target_DB_or_DW -G -U [email protected] Der Gastbenutzeralias wird verwendet, wenn Gastbenutzer in einer bestimmten Azure AD-Instanz vorhanden sind und zu einer Gruppe gehören, die in SQL-Datenbank vorhanden ist und über Datenbankberechtigungen zum Ausführen des Befehls sqlcmd verfügt (z

B

keith0 @adventureworks.com)

Wichtig Es gibt ein bekanntes Problem bei der Verwendung der Optionen -G und -U mit SQLCMD: Wenn die Option -U vor der Option -G platziert wird, kann die Authentifizierung fehlschlagen

Verwenden Sie immer die Option -G vor der Option -U.

-Hworkstation_name

Der Name einer Arbeitsstation

Diese Option legt die sqlcmd-Skriptvariable SQLCMDWORKSTATION fest

Der Arbeitsstationsname wird in der Spalte hostname der Katalogansicht sys.sysprocesses aufgeführt und kann mithilfe der gespeicherten Prozedur sp_who zurückgegeben werden

Wenn diese Option nicht angegeben ist, wird standardmäßig der Name des aktuellen Computers angenommen

Dieser Name kann verwendet werden, um verschiedene anzuzeigen

Identifizieren Sie sqlcmd-Sitzungen

-j Unformatierte Fehlermeldungen auf dem Bildschirm anzeigen

-Kapplication_intent

Deklariert den Arbeitslasttyp der Anwendung, wenn eine Verbindung zu einem Server hergestellt wird

Der einzige derzeit unterstützte Wert ist ReadOnly

Wenn -K nicht angegeben ist, unterstützt das Dienstprogramm sqlcmd keine Konnektivität mit einem sekundären Replikat in einer AlwaysOn-Verfügbarkeitsgruppe

Weitere Informationen finden Sie unter Aktive sekundäre Replikate: Lesbare sekundäre Replikate (Always On-Verfügbarkeitsgruppen)

-Mmultisubnet_failover

Geben Sie immer -M an, wenn Sie eine Verbindung mit dem Verfügbarkeitsgruppenlistener einer SQL Server-Verfügbarkeitsgruppe oder einer SQL Server-Failoverclusterinstanz herstellen

-M sorgt für eine schnellere Erkennung und Verbindung zum (derzeit) aktiven Server

Wenn -M nicht angegeben ist, ist -M deaktiviert

Weitere Informationen zu Listenern, Clientkonnektivität, Anwendungsfailover, Erstellung und Konfiguration von Verfügbarkeitsgruppen (SQL Server), Failoverclustering und AlwaysOn-Verfügbarkeitsgruppen (SQL Server) und aktiven sekundären Replikaten: Lesbare sekundäre Replikate (AlwaysOn-Verfügbarkeitsgruppen)).

-N

Dieser Schalter wird vom Client verwendet, um eine verschlüsselte Verbindung anzufordern

-PPasswort

Ein vom Benutzer bereitgestelltes Kennwort

Bei Kennwörtern wird zwischen Groß- und Kleinschreibung unterschieden

Wenn die Option -U verwendet wird, die Option -P jedoch nicht, und die Umgebungsvariable SQLCMDPASSWORD nicht festgelegt ist, fordert sqlcmd den Benutzer zur Eingabe eines Kennworts auf

Die Verwendung des NULL-Passworts wird nicht empfohlen, aber Sie können es angeben, indem Sie oben ein Paar zusammenhängender doppelter gerader Anführungszeichen für den Parameterwert verwenden:

-P “” Wichtig Die Verwendung von “-P” sollte als unsicher angesehen werden

Vermeiden Sie es, das Passwort in der Befehlszeile einzugeben

Alternativ können Sie die Umgebungsvariable „SQLCMDPASSWORD“ verwenden oder das Passwort interaktiv eingeben, indem Sie die Option „-P“ weglassen

Es wird empfohlen, ein sicheres Passwort zu verwenden

Die Eingabeaufforderung für das Passwort wird wie folgt an die Konsole ausgegeben: Passwort:

Die Benutzereingabe bleibt verborgen, d

h

es wird nichts angezeigt und der Cursor bleibt an der Anfangsposition

Mit der Umgebungsvariable SQLCMDPASSWORD können Sie ein Standardkennwort für die aktuelle Sitzung festlegen

Daher ist die Hartcodierung von Kennwörtern in Batchdateien nicht erforderlich

Das folgende Beispiel legt zuerst die Variable SQLCMDPASSWORD an der Eingabeaufforderung fest und greift dann auf das Dienstprogramm sqlcmd zu

Geben Sie an der Eingabeaufforderung Folgendes ein:

SET SQLCMDPASSWORD= [email protected]$$w0rd

Geben Sie an der resultierenden Eingabeaufforderung Folgendes ein:

SQLCMD

Wenn die Kombination aus Benutzername und Passwort falsch ist, wird eine Fehlermeldung generiert

NOTIZ! Die Umgebungsvariable OSQLPASSWORD wurde aus Gründen der Abwärtskompatibilität beibehalten

Die Umgebungsvariable SQLCMDPASSWORD hat Vorrang vor der Umgebungsvariablen OSQLPASSWORD

Da OSQLPASSWORD nicht mehr veröffentlicht wird, können die Dienstprogramme sqlcmd und osql ohne Unterbrechung nebeneinander verwendet werden

Vorhandene Skripte funktionieren weiterhin

Die Verwendung der Option -P zusammen mit der Option -E erzeugt eine Fehlermeldung

Die Angabe mehrerer Argumente nach der Option -P generiert eine Fehlermeldung und beendet sich

-S [Protokoll: ]Server[Instanzname][,Port]

Gibt die Instanz von SQL Server an, mit der eine Verbindung hergestellt werden soll

Die Option legt die sqlcmd-Skriptvariable SQLCMDSERVER fest

Geben Sie server_name an, um eine Verbindung mit der Standardinstanz von SQL Server auf diesem Servercomputer herzustellen

Geben Sie Servername [ Instanzname ] an, um eine Verbindung zu einer benannten Instanz von SQL Server auf diesem Servercomputer herzustellen

Wenn kein Servercomputer angegeben ist, stellt sqlcmd eine Verbindung mit der Standardinstanz von SQL Server auf dem lokalen Computer her

Diese Option ist erforderlich, wenn sqlcmd von einem Remotecomputer im Netzwerk ausgeführt wird

Das Protokoll kann sein: tcp (TCP/IP), lpc (gemeinsam genutzter Speicher) oder np (benannte Pipes)

Wenn Sie server_name [ when you start sqlcmd instance_name ] nicht angeben, untersucht und verwendet SQL Server die Umgebungsvariable SQLCMDSERVER

Hinweis Die Umgebungsvariable OSQLSERVER wurde aus Gründen der Abwärtskompatibilität beibehalten

Die Umgebungsvariable SQLCMDSERVER hat Vorrang vor der Umgebungsvariablen OSQLSERVER

Dies bedeutet, dass sqlcmd und osql ohne Unterbrechung koexistieren können und dass alte Skripte weiterhin funktionieren

-Ulogin_id

Dies ist der Anmeldename oder Benutzername, der für die enthaltene Datenbank verwendet wird

Für eigenständige Datenbankbenutzer müssen Sie die Datenbanknamensoption (-d) angeben.

Hinweis Die Umgebungsvariable OSQLUSER wird aus Gründen der Abwärtskompatibilität bereitgestellt

Die Umgebungsvariable SQLCMDUSER hat Vorrang vor der Umgebungsvariablen OSQLUSER

Damit können sqlcmd und osql ungestört parallel genutzt werden

Es bedeutet auch, dass vorhandene osql-Skripte weiterhin funktionieren

Wenn weder die Option -U noch die Option -P angegeben ist, versucht sqlcmd, eine Verbindung im Microsoft Windows-Authentifizierungsmodus herzustellen

Die Authentifizierung basiert auf dem Windows-Konto des Benutzers, der sqlcmd ausführt

Die Verwendung der Option -U mit der Option -E (weiter unten in diesem Artikel beschrieben) generiert eine Fehlermeldung

Wenn nach der Option -U mehrere Argumente angegeben werden, wird eine Fehlermeldung generiert und das Programm beendet

-zneues_Kennwort

Passwort ändern:

sqlcmd -U irgendein Benutzer -P [email protected] -z [email protected]$$w0rd

-Zneues_Passwort

Passwort ändern und beenden:

sqlcmd -U irgendein Benutzer -P [email protected] -Z [email protected]$$w0rd

Eingabe-/Ausgabeoptionen

-fCodepagei:Codepage[,o:Codepage] | o:Codepage[,i:Codepage]

Gibt die Eingabe- und Ausgabe-Codepages an

Die Codepage-Nummer ist ein numerischer Wert, der eine installierte Windows-Codepage angibt

Regeln zum Konvertieren von Codepages:

Wenn keine Codepages angegeben sind, verwendet sqlcmd die aktuelle Codepage sowohl für Eingabe- als auch für Ausgabedateien, es sei denn, die Eingabedatei ist eine Unicode-Datei, in diesem Fall ist keine Konvertierung erforderlich

sqlcmd erkennt automatisch Unicode-Eingabedateien im Format Big-Endian oder Little-Endian

Wenn die Option -u angegeben ist, handelt es sich bei der Ausgabe immer um Little-Endian-Unicode-Dateien

Wenn keine Ausgabedatei angegeben ist, ist die Ausgabecodepage die Konsolencodepage

Dadurch kann die Ausgabe richtig auf der Konsole angezeigt werden

Wenn mehrere Eingabedateien angegeben werden, wird davon ausgegangen, dass sie dieselbe Codepage verwenden

Unicode- und Nicht-Unicode-Eingabedateien können gemischt werden

Geben Sie an der Eingabeaufforderung chcp ein, um die Cmd.exe-Codepage zu überprüfen.

-iinput_file[,input_file2…]

Identifiziert die Datei, die einen Stapel von SQL-Anweisungen oder gespeicherten Prozeduren enthält

Sie können mehrere Dateien angeben, die nacheinander gelesen und verarbeitet werden sollen

Verwenden Sie keine Leerzeichen zwischen Dateinamen

sqlcmd prüft zunächst, ob alle angegebenen Dateien vorhanden sind

Wenn eine oder mehrere Dateien nicht vorhanden sind, wird sqlcmd beendet

Die Optionen -i und -Q/-q schließen sich gegenseitig aus

Beispiele für Pfade:

-i C:\ -i \\\\ -i “C:\Some Folder\

Dateipfade, die Leerzeichen enthalten, müssen in doppelte Anführungszeichen gesetzt werden

Diese Option kann mehr als einmal verwendet werden: -iinput_file-IIinput_file.

-ooutput_file

Identifiziert die Datei, die die Ausgabe von sqlcmd enthält

Wenn -u angegeben ist, wird die Ausgabedatei im Unicode-Format gespeichert

Wenn der Dateiname ungültig ist, wird eine Fehlermeldung generiert und sqlcmd beendet

sqlcmd unterstützt keine parallelen Schreibvorgänge durch mehrere sqlcmd-Prozesse in dieselbe Datei

In diesem Fall wäre die Dateiausgabe beschädigt oder beschädigt

Informieren Sie sich auch über die Option -f, die auch für Dateiformate relevant ist

Falls noch nicht vorhanden, wird die Datei erstellt

Eine Datei mit demselben Namen aus einer früheren sqlcmd-Sitzung wird überschrieben

Die hier angegebene Datei ist nicht die stdout-Datei

Wenn eine stdout-Datei angegeben ist, wird diese Datei nicht verwendet

Beispiele für Pfade:

-o C:< Dateiname> -o \\\\ -o “C:\Some Folder\

Dateipfade, die Leerzeichen enthalten, müssen in doppelte Anführungszeichen gesetzt werden

-r[01]

Leitet die Ausgabe der Fehlermeldung auf den Bildschirm um (stderr)

Wenn Sie keinen Parameter angeben oder 0 angeben, werden nur Fehlermeldungen mit Schweregrad 11 oder höher umgeleitet

Wenn Sie 1 angeben, wird die gesamte Fehlermeldungsausgabe (einschließlich der Ausgabe von PRINT) umgeleitet

Dies hat keine Auswirkungen, wenn Sie die Option -o verwenden

Standardmäßig werden Nachrichten an stdout gesendet.

-R

Veranlasst sqlcmd, numerische, Währungs-, Datums- und Zeitspalten zu lokalisieren, die von SQL Server basierend auf dem Client-Gebietsschema abgerufen werden

Standardmäßig werden diese Spalten gemäß den regionalen Einstellungen des Servers angezeigt

-u

Gibt an, dass OutputFile unabhängig vom Format von InputFile im Unicode-Format gespeichert wird

Abfrageausführungsoptionen

-e

Schreibt Eingabeskripte auf das Standardausgabegerät (stdout)

-I

Setzt die Verbindungsoption SET QUOTED_IDENTIFIER auf ON

Die Standardeinstellung ist AUS

Weitere Informationen finden Sie unter SET QUOTED_IDENTIFIER (Transact-SQL).

-q “Befehlszeilenabfrage”

Führt eine Abfrage aus, wenn sqlcmd gestartet wird, beendet sqlcmd jedoch nicht, nachdem die Ausführung der Abfrage abgeschlossen ist

Es können mehrere durch Semikolons getrennte Abfragen ausgeführt werden

Schließen Sie die Abfrage wie im folgenden Beispiel gezeigt in Anführungszeichen ein

Geben Sie an der Eingabeaufforderung Folgendes ein:

sqlcmd -d AdventureWorks2012 -q “SELECT FirstName, LastName FROM Person.Person WHERE LastName LIKE ‘Whi%’;”

sqlcmd -d AdventureWorks2012 -q “SELECT TOP 5 FirstName FROM Person.Person;SELECT TOP 5 LastName FROM Person.Person;”

Wichtig Verwenden Sie in der Abfrage nicht das Abschlusszeichen GO

Wenn -b mit dieser Option angegeben wird, wird sqlcmd beendet, wenn ein Fehler auftritt

Der Schalter -b wird weiter unten in diesem Artikel beschrieben

-Q “Befehlszeilenabfrage”

Führt eine Abfrage aus, wenn sqlcmd gestartet wird, und beendet sqlcmd unmittelbar danach

Es können mehrere Abfragen ausgeführt werden, die durch Semikolons getrennt sind

Schließen Sie die Abfrage wie im folgenden Beispiel gezeigt in Anführungszeichen ein

Geben Sie an der Eingabeaufforderung Folgendes ein:

sqlcmd -d AdventureWorks2012 -Q “SELECT FirstName, LastName FROM Person.Person WHERE LastName LIKE ‘Whi%’;”

sqlcmd -d AdventureWorks2012 -Q “SELECT TOP 5 FirstName FROM Person.Person;SELECT TOP 5 LastName FROM Person.Person;”

Wichtig Verwenden Sie in der Abfrage nicht das Abschlusszeichen GO

Wenn -b mit dieser Option angegeben wird, wird sqlcmd beendet, wenn ein Fehler auftritt

Der Schalter -b wird weiter unten in diesem Artikel beschrieben

-tAbfragezeitüberschreitung

Gibt die Anzahl von Sekunden an, bevor ein Befehl (oder eine SQL-Anweisung) abläuft

Diese Option legt die sqlcmd-Skriptvariable SQLCMDSTATTIMEOUT fest

Wenn kein time_out angegeben ist, tritt für den Befehl keine Zeitüberschreitung auf

Das querytime_out muss eine Zahl zwischen 1 und 65534 sein

Wenn der angegebene Wert kein numerischer Wert ist oder außerhalb dieses Bereichs liegt, generiert sqlcmd eine Fehlermeldung

Hinweis Der tatsächliche Timeout-Wert kann um einige Sekunden von dem angegebenen Wert abweichen Zeitüberschreitung.

-v var =Wert[ var =Wert…]

Erstellt eine sqlcmd-Skriptvariable, die in einem sqlcmd-Skript verwendet werden kann

Schließen Sie den Wert in Anführungszeichen ein, wenn er Leerzeichen enthält

Sie können mehrere Werte für var”values” angeben

Wenn einer der angegebenen Werte falsch ist, generiert sqlcmd eine Fehlermeldung und wird beendet

sqlcmd -v MyVar1=etwas MyVar2=”etwas”

sqlcmd -v MeineVar1=etwas -v MeineVar2=”irgendwas”

-x

Bewirkt, dass sqlcmd Skriptvariablen ignoriert

Dieser Parameter ist praktisch, wenn ein Skript mehrere INSERT-Anweisungen enthält, die Zeichenfolgen im gleichen Format wie reguläre Variablen enthalten können, wie z

B

$(Variablenname).

Formatierungsoptionen

-hheader

Gibt die Anzahl der Zeilen an, die zwischen Spaltenüberschriften gedruckt werden

Standardmäßig werden die Überschriften einmal für jede Abfrageergebnismenge gedruckt

Diese Option legt die sqlcmd-Skriptvariable SQLCMDHEADERS fest

Mit -1 können Sie festlegen, dass keine Überschriften ausgegeben werden sollen

Ein ungültiger Wert führt dazu, dass sqlcmd eine Fehlermeldung generiert und dann beendet wird

-k [12]

Entfernt alle Steuerzeichen aus der Ausgabe, z

B

Tabulatorzeichen und Zeilenumbruchzeichen

Dieser Parameter behält die Spaltenformatierung bei, wenn Daten zurückgegeben werden

Wenn 1 angegeben ist, werden die Steuerzeichen durch ein einzelnes Leerzeichen ersetzt

Wenn 2 angegeben ist, werden aufeinanderfolgende Steuerzeichen durch ein einzelnes Leerzeichen ersetzt

-k ist dasselbe wie -k1.

-scol_separator

Gibt das Spaltentrennzeichen an

Der Standardwert ist ein Leerzeichen

Diese Option legt die sqlcmd-Skriptvariable SQLCMDCOLSEP fest

Um Zeichen zu verwenden, die für das Betriebssystem eine besondere Bedeutung haben, z

das kaufmännische Und (&) oder Semikolon (;), schließen Sie das Zeichen in Anführungszeichen (“) ein

Das Spaltentrennzeichen kann ein beliebiges 8-Bit-Zeichen sein

-wcolumn_width

Gibt die Bildschirmbreite für die Ausgabeoption an und legt die sqlcmd-Skriptvariable SQLCMDCOLWIDTH fest

Die Spaltenbreite muss eine Zahl größer als 8 und kleiner als 65536 sein

Wenn die angegebene Spaltenbreite außerhalb dieses Bereichs liegt, generiert sqlcmd eine Fehlermeldung

Die Standardbreite beträgt 80 Zeichen

Wenn eine Ausgabezeile die angegebene Spaltenbreite überschreitet, wird sie springt in die nächste Zeile.

-W Diese Option entfernt nachgestellte Leerzeichen aus einer Spalte

Verwenden Sie diese Option mit der Option -s, um Daten für den Export in eine andere Anwendung vorzubereiten

Diese Option kann nicht mit den Optionen -y oder -Y verwendet werden

-ydisplay_width_for_variable_length_types Legt die Skriptvariable sqlcmd fest

Der S-Standardwert ist 256

Es begrenzt die Anzahl der Zeichen, die für große Datentypen mit variabler Länge zurückgegeben werden:. varchar(max).nvarchar(max).varbinary(max).xml.UDT ( Benutzerdefinierte Datentypen) text

text

ima ge

Hinweis Je nach Implementierung können UDTs eine feste Länge haben

Wenn die Länge eines UDT mit fester Länge kleiner als der Wert für die Anzeigebreite ist, wirkt sich dies nicht auf den Wert des zurückgegebenen UDT aus

Wenn die Länge jedoch den Anzeigebreitenwert überschreitet, wird die Ausgabe abgeschnitten

Wichtig Verwenden Sie die Option -y 0 mit äußerster Vorsicht, da sie je nach Größe der zurückgegebenen Daten ernsthafte Server- und Netzwerkleistungsprobleme verursachen kann

-Ydisplay_width_on_fixed_length_types

Legt die Skriptvariable sqlcmd fest

Der Standardwert ist 0 (unbegrenzt)

Es begrenzt die Anzahl der zurückgegebenen Zeichen für die folgenden Datentypen:

char( n ) , wobei 1 =n=8000

nchar( nn ) , wobei 1 =n=4000

varchar( nn ) , wobei 1 =n=8000

nvarchar( nn ) , wobei 1 =n=4000

varbinary( nn ) , wobei 1 =n=4000

Variante

Optionen zur Fehlerberichterstattung

-B

Gibt an, dass sqlcmd beendet wird und einen DOS ERRORLEVEL-Wert zurückgibt, wenn ein Fehler auftritt

Der an die Variable DOS ERRORLEVEL zurückgegebene Wert ist 1, wenn die SQL Server-Fehlermeldung einen Schweregrad größer als 10 hat

Andernfalls ist der zurückgegebene Wert 0

Wenn die Option -V zusätzlich zu -b angegeben ist, meldet sqlcmd keinen Fehler wenn der Schweregrad unter den mit -V angegebenen Werten liegt

Befehlszeilen-Batchdateien können verwendet werden, um den Wert von ERRORLEVEL zu testen und den Fehler entsprechend zu korrigieren

sqlcmd meldet keine Fehler der Stufe 10 (Informationsmeldungen)

Wenn das sqlcmd-Skript einen falschen Kommentar, einen Syntaxfehler oder eine fehlende Skriptvariable enthält, wird ein ERRORLEVEL-Wert von 1 zurückgegeben

-merror_level

Steuert, welche Fehlermeldungen an stdout gesendet werden

Fehlermeldungen mit einem Schweregrad größer oder gleich diesem Wert werden gesendet

Wenn dieser Wert auf -1 gesetzt ist, werden alle Nachrichten gesendet, einschließlich Informationsnachrichten

Zwischen -m und -1 sind keine Leerzeichen erlaubt

Beispielsweise ist -m-1 gültig, aber -m -1 nicht

Diese Option legt auch die sqlcmd-Skriptvariable SQLCMDERRORLEVEL fest

Diese Variable hat einen Standardwert von 0.

-VErrorSeverity

Steuert den Schweregrad, der zum Festlegen der ERRORLEVEL-Variablen verwendet wird

ERRORLEVEL wird für Fehlermeldungen gesetzt, deren Schweregrad größer oder gleich diesem Wert ist

Werte kleiner als 0 werden als 0 zurückgegeben

Batch- und CMD-Dateien können verwendet werden, um den Wert der ERRORLEVEL-Variablen zu testen

Andere Optionen

-apacket_size

Fordert ein Paket mit einer anderen Größe an

Diese Option legt die sqlcmd-Skriptvariable SQLCMDPACKETSIZE fest

packet_size muss einen Wert zwischen 512 und 32767 haben

Der Standardwert ist 4096

Ein höherer Paketgrößenwert kann die Leistung verbessern, wenn Skripts ausgeführt werden, die zahlreiche SQL-Anweisungen zwischen GO-Befehlen enthalten

Sie können eine größere Paketgröße anfordern

Wenn die Anforderung jedoch abgelehnt wird, verwendet sqlcmd den Standardwert des Servers für die Paketgröße

-cBatchterminator

Gibt das Stapelabschlusszeichen an

Standardmäßig werden Befehle beendet und an SQL Server gesendet, indem das Wort „GO“ in einer Zeile selbst eingegeben wird

Verwenden Sie beim Neudefinieren des Stapelabschlusszeichens keine für Transact-SQL reservierten Schlüsselwörter oder Zeichen, die eine spezielle Betriebssystembedeutung haben, selbst wenn ihnen ein umgekehrter Schrägstrich vorangestellt ist

-L [c]

Listet die lokal konfigurierten Servercomputer und die Namen der Servercomputer auf, die Broadcast-Nachrichten über das Netzwerk senden

Dieser Parameter kann nicht in Verbindung mit anderen Parametern verwendet werden

Es können maximal 3.000 Server-Computer aufgelistet werden

Eine Warnmeldung wird angezeigt, wenn die Serverliste aufgrund der Puffergröße abgeschnitten wurde

Hinweis Aufgrund der Art der Netzwerkübertragung erhält sqlcmd möglicherweise nicht rechtzeitig eine Antwort von allen Servern

Daher kann die Liste der zurückgegebenen Server bei jedem Aufruf dieser Option variieren

Wenn der optionale c-Parameter angegeben wird, wird die Ausgabe ohne den Server:-Header angezeigt

Jede Serverzeile wird ohne führende Leerzeichen ausgegeben

Diese Darstellung wird als saubere Ausgabe bezeichnet

Einfache Ausgabe verbessert die Verarbeitungsleistung von Skriptsprachen

-p[1]

Druckt Leistungsstatistiken für jeden Ergebnissatz

Die folgende Ausgabe ist ein Beispiel für das Format von Leistungsstatistiken:

Netzwerkpaketgröße (Byte): n

x xist[s]:

Uhrzeit (ms.): Gesamt t1 durchschn

t2 (t3 x Akte pro Sek.)

Dabei gilt: x = Anzahl der vom SQL Server verarbeiteten Transaktionen

t1 = Gesamtdauer aller Transaktionen

t2 = Durchschnittliche Dauer einer einzelnen Transaktion

t3 = Durchschnittliche Anzahl von Transaktionen pro Sekunde

Alle Zeiten sind in Millisekunden angegeben

Wenn der optionale If-Parameter 1 angegeben wird, werden die Statistiken im durch Doppelpunkte getrennten Format ausgegeben, das einfach in eine Tabellenkalkulation importiert oder von einem Skript verarbeitet werden kann

Wenn der optionale Parameter mit einem anderen Wert als 1 angegeben wird, wird ein Fehler generiert und sqlcmd wird beendet

– X[1]

Deaktiviert Befehle, die die Systemsicherheit beeinträchtigen können, wenn sqlcmd aus einer Batchdatei ausgeführt wird

Die deaktivierten Befehle werden weiterhin erkannt; sqlcmd gibt eine Warnmeldung aus und setzt die Ausführung fort

Wenn der optionale Parameter 1 angegeben ist, generiert sqlcmd eine Fehlermeldung und wird dann beendet

Die folgenden Befehle werden deaktiviert, wenn die Option -X verwendet wird:

Ed

!!Befehl

Wenn die Option -X angegeben ist, verhindert sie die Übergabe von Umgebungsvariablen an sqlcmd

Es verhindert auch die Ausführung des Startskripts, das mit der Skriptvariable SQLCMDINI angegeben wurde

Weitere Informationen zu sqlcmd-Skriptvariablen finden Sie unter Verwenden von sqlcmd mit Skriptvariablen.

-?

Zeigt die Version von sqlcmd und eine Syntaxzusammenfassung der sqlcmd-Optionen an

Bemerkungen

Die Optionen müssen nicht in der Reihenfolge verwendet werden, in der sie im Syntaxabschnitt angezeigt werden

Wenn mehrere Ergebnisse zurückgegeben werden, druckt sqlcmd eine Leerzeile zwischen jeder Ergebnismenge in einem Stapel

Außerdem wird die Meldung betroffene Zeilen nicht angezeigt, wenn sie nicht auf die ausgeführte Anweisung zutrifft

Um sqlcmd interaktiv zu verwenden, geben Sie an der Eingabeaufforderung sqlcmd und eine oder mehrere der weiter oben in diesem Artikel beschriebenen Optionen ein

Weitere Informationen finden Sie unter Verwenden des Dienstprogramms sqlcmd

Hinweis Die Optionen -L, -Q, -Z und -i bewirken, dass sqlcmd nach der Ausführung beendet wird

Die volle Länge der sqlcmd-Kommandozeile in der Kommandoumgebung (Cmd.exe) inklusive aller Argumente und erweiterten Variablen entspricht der im Betriebssystem festgelegten Länge für Cmd.exe

Variables Ranking (vom niedrigsten zum höchsten)

Umgebungsvariablen auf Systemebene Umgebungsvariablen auf Benutzerebene Befehlsshell-Set ( SETX=Y) an der Eingabeaufforderung, bevor sqlcmd ausgeführt wird

sqlcmd-v X=Y :Setvar X Y

Hinweis Öffnen Sie die Systemsteuerung, klicken Sie auf System und dann auf die Registerkarte Erweitert, um die Umgebungsvariablen anzuzeigen

sqlcmd-Skriptvariablen

Variable Zugeordnete Schalter R/W Standardwert SQLCMDUSER -UR “” SQLCMDPASSWORD -P — “” SQLCMDSERVER -SR “DefaultLocalInstance” SQLCMDWORKSTATION -HR “Computername” SQLCMDDBNAME -d R “” SQLCMDLOGINTIMEOUT -l R/W “8” (Sekunden) SQLCMDSTATTIMEOUT -t R/W “0” = unbegrenzt warten SQLCMDHEADERS -HR/W “0” SQLCMDCOLSEP -SR/W ” ” SQLCMDCOLWIDTH -w R/W “0” SQLCMDPACKETSIZE -a R “4096” SQLCMDERRORLEVEL -MR/W 0 SQLCMDMAXVARTYPEWIDTH – y R/W „256“ SQLCMDMAXFIXEDTYPEWIDTH -y R/W „0“ = unbegrenzt SQLCMDEDITOR R/W „edit.com“ SQLCMDINI R „“ SQLCMDUSEAAD -GR/W „“

SQLCMDUSER, SQLCMDPASSWORD und SQLCMDSERVER werden gesetzt, wenn :Connect verwendet wird

R gibt an, dass der Wert nur einmal während der Programminitialisierung gesetzt werden kann

R/W gibt an, dass der Wert mit dem Befehl setvar geändert werden kann und bei nachfolgenden Befehlen der neue Wert angewendet wird

sqlcmd-Befehle

Zusätzlich zu den Transact-SQL-Anweisungen in sqlcmd sind auch die folgenden Befehle verfügbar:

GO [Zahl] : Liste

[ : ] RESET :Fehler

[ : ] ED : Aus

[:] !! :Perftrace

[ : ] BEENDEN :Verbinden

[ : ] EXIT :Ein Fehler

:r :hilfe

:ServerList :XML [EINAUS]

:Setvar :Listvar

Beachten Sie bei der Verwendung von sqlcmd-Befehlen Folgendes:

Mit Ausnahme von GO muss allen sqlcmd-Befehlen ein Doppelpunkt (:) vorangestellt werden

Wichtig Aus Gründen der Abwärtskompatibilität zu bestehenden osql-Skripten werden einige der mit [ : ] gekennzeichneten Befehle auch ohne Angabe des Doppelpunkts erkannt

sqlcmd-Befehle werden nur erkannt, wenn sie am Anfang einer Zeile stehen

Ohne sqlcmd – Befehl unterscheidet zwischen Groß- und Kleinschreibung

Jeder Befehl muss in einer eigenen Zeile stehen

Einem Befehl darf keine Transact-SQL-Anweisung oder ein anderer Befehl folgen.

Die Befehle werden sofort ausgeführt

Sie werden nicht wie Transact-SQL-Anweisungen in den Ausführungspuffer gestellt

Befehle bearbeiten

[ : ] Ed

Startet den Texteditor

Dieser Editor kann verwendet werden, um den aktuellen Transact-SQL-Batch oder den zuletzt ausgeführten Batch zu bearbeiten

Um den zuletzt ausgeführten Stapel zu bearbeiten, muss der ED-Befehl unmittelbar nach Abschluss der Ausführung des letzten Stapels eingegeben werden

Der Texteditor wird durch die Umgebungsvariable SQLCMDEDITOR definiert

Der Standardeditor ist „Bearbeiten“

Sie können den Editor ändern, indem Sie die Umgebungsvariable SQLCMDEDITOR festlegen

Wenn Sie beispielsweise Microsoft Notepad als Editor festlegen möchten, müssen Sie Folgendes an der Eingabeaufforderung eingeben:

SET SQLCMDEDITOR=Notizblock

[ : ] ZURÜCKSETZEN

Löscht den Statement-Cache.

:List

Gibt den Inhalt des Anweisungscache aus

Variablen

:SetvarVar [ “Wert” ]

Definiert sqlcmd-Skriptvariablen

Skriptvariablen haben folgendes Format: $(VARNAME).

Bei Variablennamen wird die Groß-/Kleinschreibung nicht beachtet

Skriptvariablen können wie folgt angegeben werden:

Implizit – mit einer Befehlszeilenoption

Beispielsweise legt die Option -l die sqlcmd-Variable SQLCMDLOGINTIMEOUT fest

Explizit – mit dem Befehl :Setvar.

Durch Definieren einer Umgebungsvariablen vor dem Ausführen von sqlcmd.

Hinweis Die Option X verhindert, dass Umgebungsvariablen an sqlcmd übergeben werden Variable, die mit :Setvar definiert wurde, hat Vorrang

Variablennamen dürfen keine Leerzeichen enthalten

Variablennamen können nicht die gleiche Form wie ein Variablenausdruck haben, z

B

$(var)

Wenn der Zeichenfolgenwert der Skriptvariablen Leerzeichen enthält, müssen Sie den Wert in Anführungszeichen einschließen

Wenn für eine Skriptvariable kein Wert angegeben ist, wird die Skriptvariable weggelassen.

:Listvar

Zeigt die Liste der aktuell gesetzten Skriptvariablen an

Hinweis Es werden nur Skriptvariablen angezeigt, die von sqlcmdor mit dem Befehl :Setvar gesetzt wurden

Ausgabebefehle

:Fehler

<<| STDERR| STDOUT

Leitet alle Fehlerausgaben an die durch filename angegebene Datei, an stderr oder an stdoutum

Der Error-Befehl kann mehrfach in einem Skript verwendet werden

Die Fehlerausgabe wird standardmäßig an stderr gesendet.

Dateiname

Erstellt und öffnet eine Datei, in die die Ausgabe geschrieben wird

Wenn die Datei bereits existiert, wird sie auf 0 Bytes gekürzt

See also  Best Choice calibre cover wird nicht angezeigt Update New

Wenn der Zugriff auf die Datei aufgrund unzureichender Berechtigungen oder aus anderen Gründen nicht möglich ist, wird die Ausgabe nicht umgeleitet, sondern an das zuletzt angegebene Ziel oder an das Standardziel gesendet

STDERR

Leitet die Fehlerausgabe an den stderr-Datenstrom

Wenn dieser Stream umgeleitet wurde, wird die Fehlerausgabe von dem Ziel empfangen, an das der Stream umgeleitet wurde

STDOUT

Leitet die Fehlerausgabe an den stdout-Stream

Wenn dieser Stream umgeleitet wurde, wird die Fehlerausgabe von dem Ziel empfangen, an das der Stream umgeleitet wurde.

:Out filename| | | |

Erstellt und leitet alle Abfrageergebnisse zu oder von der durch filename, stderr oder stdoutum angegebenen Datei weiter

Standardmäßig wird die Ausgabe an stdout gesendet

Wenn die Datei bereits existiert, wird sie auf 0 Bytes gekürzt

Der Out-Befehl kann mehrfach in einem Skript verwendet werden.

😛 erftrace filename| | | |

Erstellt und leitet alle Leistungsverfolgungsinformationen zu oder von der Datei weiter, die durch filename, stderr oder stdoutum angegeben ist

Standardmäßig wird die Ausgabe der Leistungsverfolgung an stdout gesendet

Wenn die Datei bereits existiert, wird sie auf 0 Bytes gekürzt

Der Perftrace-Befehl kann mehrfach in einem Skript verwendet werden

Ausführungssteuerungsbefehle

:Bei Fehler[beendenignorieren]

Gibt die auszuführende Aktion an, wenn während der Skript- oder Stapelausführung ein Fehler auftritt

Wenn die Exit-Option verwendet wird, wird sqlcmd mit dem entsprechenden Fehlerwert beendet

Wenn die Option ignorieren verwendet wird, ignoriert sqlcmd den Fehler und legt fest, dass die Stapel- oder Skriptausführung fortgesetzt wird

Standardmäßig wird eine Fehlermeldung ausgegeben

[ : ] VERLASSEN

Bewirkt, dass sqlcmd beendet wird

[ : ] EXIT[ (Anweisung) ]

Ermöglicht die Verwendung des Ergebnisses einer SELECT-Anweisung als Rückgabewert von sqlcmd

Wenn numerisch, wird die erste Spalte der letzten Ergebniszeile in eine 4-Byte-Ganzzahl (Long) umgewandelt

MS-DOS, Linux und Mac übergeben das Low-Byte an den übergeordneten Prozess oder die Fehlerebene des Betriebssystems

Windows 200x übergibt die gesamte 4-Byte-Ganzzahl

Die Syntax lautet:

:EXIT(Abfrage)

Beispiel:

:EXIT(SELECT @@ROWCOUNT)

Sie können den EXIT-Parameter auch als Teil einer Stapeldatei einschließen

Geben Sie an der Eingabeaufforderung z

Beispiel: sqlcmd -Q “EXIT(SELECT COUNT(*) FROM ‘%1’)”

Das Dienstprogramm sqlcmd sendet alle Informationen zwischen den Klammern () an den Server

Wenn eine gespeicherte Systemprozedur einen Satz auswählt und einen Wert zurückgibt, wird nur die Auswahl zurückgegeben

Die EXIT**()**-Anweisung mit nichts zwischen den Klammern führt alles vor der Anweisung im Batch aus und wird dann ohne Rückgabewert beendet

Wenn eine fehlerhafte Abfrage angegeben wird, wird sqlcmd beendet, ohne einen Wert zurückzugeben

Die folgende Liste enthält a Auflistung der EXIT-Formate:

:AUSFAHRT

Führt den Stapel nicht aus, beendet das Dienstprogramm sofort und gibt keinen Wert zurück

:EXIT( )

Führt den Stapel aus, beendet dann das Dienstprogramm und gibt keinen Wert zurück

:EXIT(query)

Führt den Stapel aus, der die Abfrage enthält, und beendet dann das Dienstprogramm, nachdem die Ergebnisse der Abfrage zurückgegeben wurden

Wenn RAISERROR in einem sqlcmd-Skript verwendet wird und der Status 127 ausgelöst wird, wird sqlcmd beendet und die entsprechende Nachrichten-ID wird an den zurückgegebenen Client gesendet

Beispiel:

RAISERROR(50001, 10, 127)

Dieser Fehler führt dazu, dass das sqlcmd-Skript beendet wird und die Meldungs-ID 50001 an den Client zurückgegeben wird

Die Rückgabewerte −1 bis −99 sind für SQL Server reserviert

sqlcmd definiert die folgenden zusätzlichen Rückgabewerte:

Rückgabewerte BESCHREIBUNG -100 Vor der Auswahl des Rückgabewerts ist ein Fehler aufgetreten

-101 Bei der Auswahl eines Rückgabewerts wurden keine Zeilen gefunden

-102 Beim Auswählen des Rückgabewerts ist ein Konvertierungsfehler aufgetreten

GO [Nummer]

GO signalisiert sowohl das Ende eines Batches als auch die Ausführung von zwischengespeicherten Transact-SQL-Anweisungen

Der Stapel wird mehrmals als separate Stapel ausgeführt

Sie können eine Variable nicht mehr als einmal in einem einzelnen Stapel deklarieren

Verschiedene Befehle

:r Dateiname

Analysiert zusätzliche Transact-SQL-Anweisungen und sqlcmd-Befehle aus der durch filename angegebenen Datei im Anweisungscache

Wenn die Datei Transact-SQL-Anweisungen enthält, denen kein GO folgt, müssen Sie in der ersten Zeile nach :r GO eingeben

.Hinweis <<> wird relativ zum Startverzeichnis gelesen, in dem > ausgeführt wurde

Die Datei wird gelesen und ausgeführt, nachdem ein Stapelabschlusszeichen gefunden wurde

Sie können den Befehl :r mehrmals verwenden

Die Datei kann einen beliebigen sqlcmd-Befehl enthalten

Dazu gehört das Batch-Terminator GO

Hinweis Die im interaktiven Modus angezeigte Zeilenanzahl wird für jeden gefundenen :r-Befehl um 1 erhöht

Der Befehl :r erscheint in der Ausgabe des Listenbefehls

:Serverliste

Listet die lokal konfigurierten Server und die Namen der Server auf, die Nachrichten über das Netzwerk senden.

:connectingserver_name[instance_name] [-l timeout] [-U user_name [-P password]]

Stellt eine Verbindung zu einer Instanz von SQL Server her

Schließt auch die aktuelle Verbindung

Timeout-Optionen:

Wert Verhalten 0 unbegrenzte Wartezeit n0> Wartezeit beträgt n Sekunden

Die Skriptvariable SQLCMDSERVER spiegelt die derzeit aktive Verbindung wider

Wenn das Zeitlimit nicht angegeben ist, wird standardmäßig der Wert der Variablen SQLCMDLOGINTIMEOUT verwendet

Wenn nur der Benutzername angegeben ist (entweder als Option oder als Umgebungsvariable), wird der Benutzer zur Eingabe eines Kennworts aufgefordert

Benutzer werden nicht aufgefordert, wenn die Umgebungsvariable SQLCMDUSER oder SQLCMDPASSWORD festgelegt wurde

Wenn weder Optionen noch Umgebungsvariablen angegeben sind, wird der Windows-Authentifizierungsmodus für die Anmeldung verwendet

Wenn Sie beispielsweise mit integrierter Sicherheit eine Verbindung zu einer Instanz1 von SQL Server myserver herstellen möchten, verwenden Sie den folgenden Befehl:

:myserver\instance1 verbinden

Wenn Sie mithilfe von Skriptvariablen eine Verbindung zur Standardinstanz auf myserver herstellen möchten, würden Sie Folgendes eingeben:

:setvar myusername test

:setvar meinservername meinserver

:connect $(meinServername) $(meinBenutzername)

[:] !!Befehl

Führt Betriebssystembefehle aus

Um einen Betriebssystembefehl auszuführen, geben Sie zwei Ausrufezeichen ( !! ) gefolgt vom Betriebssystembefehl in einer neuen Zeile ein

Beispiel:

:!! Dir

Hinweis Der Befehl wird auf dem Computer ausgeführt, auf dem sqlcmd ausgeführt wird.

:XML [ONOFF]

Weitere Informationen finden Sie in diesem Artikel unter XML-Ausgabeformat und JSON-Ausgabeformat.

:Help

Listet die sqlcmd-Befehle zusammen mit einer kurzen Beschreibung jedes Befehls auf

sqlcmd-Dateinamen

sqlcmd-Eingabedateien können mit der Option -i oder dem Befehl :r angegeben werden

Ausgabedateien können mit der Option -o oder den Befehlen :Error, :Out und :Perftrace angegeben werden

Im Folgenden finden Sie einige Richtlinien für die Verwendung dieser Dateien:

:Error , :Out und :Perftrace sollten einen separaten Dateinamen verwenden

Wird der gleiche Parameter < < > verwendet, können die Eingaben der Befehle vertauscht werden

Wenn eine Eingabedatei auf einem Remoteserver einen Laufwerksdateipfad wie „:Out c:\OutputFile.txt“ enthält und von sqlcmd auf einem lokalen Computer aufgerufen wird, wird die Ausgabedatei auf dem lokalen Computer und nicht auf dem Remoteserver erstellt

Gültige Dateipfade sind beispielsweise: C:\ , \\\\ und “C:\Some Folder\

Verwenden Sie Anführungszeichen, wenn der Pfad ein Leerzeichen enthält

Alle vorhandenen Dateien mit demselben Namen werden bei jeder neuen sqlcmd-Sitzung überschrieben

Informationsmeldungen

sqlcmd gibt alle vom Server gesendeten Informationsmeldungen aus

Das folgende Beispiel gibt eine Informationsmeldung aus, nachdem die Transact-SQL-Anweisungen ausgeführt wurden

Geben Sie an der Eingabeaufforderung den folgenden Befehl ein:

SQLCMD

Geben Sie an der sqlcmd-Eingabeaufforderung Folgendes ein:

VERWENDE AdventureWorks2012;

GEHEN

Wenn Sie die EINGABETASTE drücken, wird die folgende Informationsmeldung angezeigt: Der Datenbankkontext wurde in „AdventureWorks2012“ geändert

Ausgabeformat der Transact-SQL-Abfrage

sqlcmd gibt zuerst einen Spaltenkopf aus, der die in der SELECT-Liste angegebenen Spaltennamen enthält

Die Spaltennamen werden durch das Zeichen SQLCMDCOLSEP getrennt

Standardmäßig ist dies ein Leerzeichen

Ist der Spaltenname kürzer als die Spaltenbreite, wird die Ausgabe bis zur nächsten Spalte mit Leerzeichen aufgefüllt

Auf diese Zeile folgt eine Trennlinie, die durch eine Reihe von Strichen dargestellt wird

Die folgende Ausgabe zeigt ein Beispiel

Starten Sie sqlcmd

Geben Sie an der sqlcmd-Eingabeaufforderung die folgende Abfrage ein:

VERWENDE AdventureWorks2012;

SELECT TOP (2) BusinessEntityID, Vorname, Nachname

VON Person.Person;

GEHEN

Wenn Sie die EINGABETASTE drücken, wird das folgende Resultset zurückgegeben

BusinessEntityID Vorname Nachname

———— ———-

285 Syed Abbas

293 Katharina Abel

(2 Reihe(n) betroffen)

Obwohl die BusinessEntityID-Spalte nur vier Zeichen breit ist, wurde sie erweitert, um den längeren Spaltennamen aufzunehmen

Standardmäßig endet die Ausgabe beim 80

Zeichen

Dies kann mit der Option -w oder durch Festlegen der Skriptvariablen SQLCMDCOLWIDTH geändert werden

XML-Ausgabeformat

Die aus der FOR XML-Klausel resultierende XML-Ausgabe wird unformatiert in einem kontinuierlichen Stream ausgegeben

Verwenden Sie den Befehl :XML ON, wenn Sie eine Ausgabe im XML-Format erwarten

Hinweis sqlcmd gibt Fehlermeldungen im üblichen Format zurück

Beachten Sie, dass die Fehlermeldungen auch im XML-Format in den XML-Textstrom geschrieben werden

Mit :XML ON zeigt :XML ON keine Informationsmeldungen an

Verwenden Sie den folgenden Befehl, um den XML-Modus zu deaktivieren: :XML OFF.

Der GO-Befehl sollte nicht verwendet werden, bevor der XML OFF-Befehl ausgegeben wurde, da XML OFF bewirkt, dass sqlcmd zur zeilenbasierten Ausgabe zurückkehrt

Es ist nicht möglich, XML-Daten (Stream) und Rowset-Daten zu mischen

Wenn der Befehl XML ON nicht verwendet wurde, bevor eine Transact-SQL-Anweisung ausgeführt wurde, die XML-Datenströme ausgibt, wird die Ausgabe nicht korrekt gerendert

Nachdem Sie den XML ON-Befehl verwendet haben, können Sie keine Transact-SQL-Anweisungen ausführen, die reguläre Rowsets ausgeben

Hinweis: Der :XML-Befehl unterstützt nicht die SET STATISTICS XML-Anweisung

JSON-Ausgabeformat

Verwenden Sie den Befehl :XML ON, wenn Sie eine Ausgabe im JSON-Format erwarten

Andernfalls enthält die Ausgabe sowohl den Spaltennamen als auch den JSON-Text

Diese Ausgabe ist kein gültiges JSON

Verwenden Sie zum Deaktivieren des XML-Modus den folgenden Befehl: :XML OFF.

Weitere Informationen finden Sie unter XML-Ausgabeformat in diesem Artikel.

Azure Active Directory-Authentifizierung verwenden

Beispiele für die Verwendung der Azure Active Directory-Authentifizierung:

sqlcmd -S Target_DB_or_DW.testsrv.database.windows.net -G -l 30 sqlcmd -S Target_DB_or_DW.testsrv.database.windows.net -G -U [email protected] -P MyAADPassword -l 30

Best Practices für die Verwendung von SQLCMD

Die folgenden Methoden sind bewährte Best Practices zur Verbesserung der Sicherheit und Effizienz

Verwenden Sie die integrierte Sicherheit von Windows

Verwenden Sie in automatisierten Umgebungen -X[1].

Sichern Sie Eingabe- und Ausgabedateien, indem Sie die entsprechenden NTFS-Dateisystemberechtigungen festlegen use.

Versuchen Sie aus Leistungsgründen, alle Aufgaben in einer einzigen sqlcmd-Sitzung auszuführen, nicht in mehreren verschiedenen Sitzungen.

Setzen Sie Batch- oder Abfrage-Timeouts auf Werte, die länger sind als die erwartete Ausführungszeit.

Maximieren Sie mit folgenden Methoden die Korrektheit:

Verwenden Sie -V16, um Meldungen mit Schweregrad 16 zu protokollieren

Meldungen des Schweregrads 16 weisen auf allgemeine Fehler hin, die der Benutzer korrigieren kann

Überprüfen Sie nach Beendigung des Prozesses den Exit-Code und die Variable DOS ERRORLEVEL

sqlcmd gibt normalerweise 0 (Null) zurück

Andernfalls wird der ERRORLEVEL-Wert wie durch -V konfiguriert gesetzt

Mit anderen Worten: Erwarten Sie nicht, dass ERRORLEVEL mit der von SQL Server gemeldeten Fehlernummer übereinstimmt

Die Fehlernummer ist ein SQL Server-spezifischer Wert, der der Systemfunktion @@ERROR entspricht

ERRORLEVEL ist ein SQLCMD-spezifischer Wert, der angibt, warum SQLCMD beendet wurde und von der Angabe des Befehlszeilenarguments -b betroffen ist

Die Verwendung von -V16 in Kombination mit Exit-Code-Prüfung und DOS ERRORLEVEL kann dazu beitragen, Fehler in automatisierten Umgebungen zu vermeiden, insbesondere Quality Gates vor einer Produktionsfreigabe

Nächste Schritte

Hilfe erhalten

Windows 10: Windows Script Host abschalten New

Video ansehen

Neue Informationen zum Thema da die ausführung von skripts auf diesem system deaktiviert ist

Vielen Dank für Ihre Unterstützung:
https://paypal.me/SemperVideo
http://www.patreon.com/sempervideo?ty=c
http://flattr.com/profile/SemperVideo
http://amzn.to/28YoGFh

da die ausführung von skripts auf diesem system deaktiviert ist Einige Bilder im Thema

 New Windows 10: Windows Script Host abschalten
Windows 10: Windows Script Host abschalten Update

Neuigkeit – Windows 11 offizielle Updates auf Stable … New Update

2021-10-12 · Heute traf bei mir die KB5006674 ein, Build 21H2 22000.258. Keine Probleme bis jetzt. (y)

+ mehr hier sehen

Read more

Nach positiven Erfahrungen mit einem meiner Subsysteme (HTPC, dort läuft ohnehin nur Kodi) habe ich das mir vor zwei Tagen angebotene Upgrade trotz Vorbehalten angenommen

Für mich war es ein Wochenende mit viel Arbeit und vielen grauen Haaren

An die Taskleiste angeheftete Programme konnte ich trotz tausender Tipps aus dem Internet nicht von dort aus starten

Nicht einmal der Explorer ließ sich starten

Jedes Mal kam das Fehlerfenster mit der Meldung (soweit ich mich erinnern kann): „Eintrag unter C:\Users\\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar not found

Stellen Sie sicher, dass. ..” usw

usw

Geprüft

Alles war da, was nicht gefunden wurde

Registrierung auf den Kopf gestellt, keine Antiviren- oder Firewall-Software von Drittanbietern läuft auf mir

Habe wirklich alle Tipps abgearbeitet

NICHTS hat geholfen

Was mir gut gefallen hat, war, dass beim Ändern der Lautstärke nicht mehr so ​​ein riesiger Block in der oberen linken Ecke auftaucht

Dafür habe ich das Tool nicht benötigt

Mir hat auch das Startmenü besser gefallen und dass sie mehr Farben für die Systemsymbole verwenden

Was mir nicht gefallen hat, war die Bildlaufleiste

Eindeutig zu schmal

Verärgert bin ich heute zu Windows 10 zurückgekehrt

Das Downgrade dauerte nur etwa 15 Minuten, das Upgrade über eine Stunde

Microsoft hat nun bis 10/2025 Zeit, diesen Pfusch zu verbessern.

German PowerShell Basis Video Tutorial Teil 10 von 21 Security Update

Video unten ansehen

Weitere hilfreiche Informationen im Thema anzeigen da die ausführung von skripts auf diesem system deaktiviert ist

Im zehnten Teil von meinem 21 Teiligen PowerShell Basis Tutorial geht es um
die PowerShell sicherheit (security) :
• PowerShell Sicherheitsstrategien
• PowerShell Execution Policy
Die Links und Tabellen und Demos zu diesem Video sind auf meinem Blog zu finden:
http://www.admin-source.de
Ich werde in 21 ungefähr, 1 Stündigen, Videos die Grundlagen der Windows PowerShell 2.0 und 3.0 erklären. So dass man die PowerShell Grundlagen in eine 3 Tägigen Lehrgang verstanden hat.
In dem Tutorial geht es um die Interaktive Nutzung der PowerShell NICHT um das Scripten!
Das Scripting werde ich dann in einem weiteren PowerShell Lehrgang erklären.

da die ausführung von skripts auf diesem system deaktiviert ist Einige Bilder im Thema

 Update New German PowerShell Basis Video Tutorial Teil 10 von 21 Security
German PowerShell Basis Video Tutorial Teil 10 von 21 Security Update

Neuigkeiten in Windows 10 Enterprise LTSC 2019 – What’s … Update New

2022-03-17 · In diesem Artikel. Betrifft: Windows 10 Enterprise LTSC 2019; Dieser Artikel enthält neue und aktualisierte Features und Inhalte, die für IT-Spezialisten für Windows 10 Enterprise LTSC 2019 von Interesse sind, im Vergleich zu Windows 10 Enterprise LTSC 2016 (LTSB).

+ Details hier sehen

Read more

Inhaltsverzeichnis

Was ist neu in Windows 10 Enterprise LTSC 2019

Artikel

17.03.2022

15 Minuten Lesezeit

1 Beitragender Ist diese Seite hilfreich? Ja Nein Haben Sie weiteres Feedback für uns? Feedback wird an Microsoft gesendet: Wenn Sie auf die Schaltfläche „Senden“ klicken, wird Ihr Feedback zur Verbesserung von Microsoft-Produkten und -Diensten verwendet

Datenschutzrichtlinie Absenden Vielen Dank.

In diesem Artikel

Grüße:

Windows 10 Enterprise LTSC 2019

Dieser Artikel enthält neue und aktualisierte Features und Inhalte, die für IT-Experten von Interesse sind, für Windows 10 Enterprise LTSC 2019 im Vergleich zu Windows 10 Enterprise LTSC 2016 (LTSB)

Eine kurze Beschreibung des LTSC-Wartungskanals und des zugehörigen Supports finden Sie unter Windows 10 Enterprise LTSC

Hinweis Features in Windows 10 Enterprise LTSC 2019 entsprechen Windows 10, Version 1809

Windows 10 Enterprise LTSC 2019 basiert auf Windows 10 Pro, Version 1809 , und fügt Premium-Funktionen hinzu, die auf die Bedürfnisse großer und mittlerer Organisationen (einschließlich großer akademischer Einrichtungen) zugeschnitten sind, z B.:

Erweiterter Schutz vor modernen Sicherheitsbedrohungen

Vollständige Flexibilität bei der Bereitstellung des Betriebssystems

Update- und Support-Optionen

Umfassende Verwaltungs- und Kontrollfunktionen für Geräte und Apps

Die Version Windows 10 Enterprise LTSC 2019 ist eine wichtige Version für LTSC-Benutzer, da sie die kumulativen Verbesserungen in den Windows 10-Versionen 1703, 1709, 1803 und 1809 enthält

Einzelheiten zu diesen Verbesserungen finden Sie weiter unten

Wichtig Die LTSC-Version ist für bestimmte Geräte

Apps und Tools, die für die Version des General Availability Channel von Windows 10 entwickelt wurden, bieten möglicherweise eingeschränkte Unterstützung für LTSC

Microsoft Intune

Microsoft Intune unterstützt Windows 10 Enterprise LTSC 2019 und höher

Beachten Sie jedoch, dass Windows 10-Update-Ringe-Geräteprofile keine ltsc-Versionen unterstützen

Daher sollten Sie zum Patchen Policy Configuration Service Provider, WSUS oder Configuration Manager verwenden

Sicherheit

Diese Version von Windows 10 enthält Sicherheitserweiterungen für Bedrohungsschutz, Informationsschutz und Identitätsschutz

Schutz vor Bedrohungen

Microsoft Defender für Endpoint

Die Microsoft Defender für Endpoints-Plattform umfasst die im folgenden Diagramm gezeigten Sicherheitssäulen

In dieser Version von Windows umfasst Defender for Endpoint leistungsstarke Analysen, Sicherheitsstapelintegration und zentralisierte Verwaltung für eine bessere Erkennung, Prävention, Untersuchung, Reaktion und Verwaltung

Verringerung der Angriffsfläche

Attack Surface Reduction umfasst hostbasierte Intrusion Prevention-Systeme wie [kontrollierter Ordnerzugriff]/microsoft-365/security/defender-endpoint/enable-controled-folders)

Diese Funktion kann dazu beitragen, dass Ransomware und andere zerstörerische Malware nicht in Ihre persönlichen Änderungsdateien eindringen

In einigen Fällen können Apps, die Sie normalerweise verwenden, daran gehindert werden, Änderungen an allgemeinen Ordnern wie Dokumenten oder Bildern vorzunehmen

Wir haben es Ihnen erleichtert, Apps hinzuzufügen, die kürzlich blockiert wurden, sodass Sie Ihr Gerät weiterhin verwenden können, ohne die Funktion vollständig zu deaktivieren

Wenn eine App blockiert ist, wird sie in einer Liste der kürzlich blockierten Apps angezeigt Sie können darauf zugreifen, indem Sie unter Ransomware-Schutz auf Einstellungen verwalten klicken

Klicken Sie auf App über überwachten Ordnerzugriff zulassen

Klicken Sie auf die Schaltfläche +, wenn Sie dazu aufgefordert werden, und wählen Sie Kürzlich blockierte Apps aus

Wählen Sie eine der Apps aus, um sie der Liste der zugelassenen Apps hinzuzufügen

Auf dieser Seite können Sie auch nach einer App suchen

Windows Defender-Firewall

Die Windows Defender-Firewall unterstützt jetzt Prozesse des Windows-Subsystems für Linux (WSL)

Sie können genau wie für jeden Windows-Prozess spezifische Regeln für einen WSL-Prozess hinzufügen

Darüber hinaus unterstützt die Windows Defender Firewall jetzt auch Benachrichtigungen für WSL-Prozesse

Wenn beispielsweise ein Linux-Tool den Zugriff von außen auf einen Port zulassen möchte (für SSH oder einen Webserver wie nginx), fragt die Windows Defender-Firewall nach einer Zugriffserlaubnis – wie es ein Windows-Prozess tut, wenn der Port anfängt, Verbindungen zu akzeptieren

Dies wurde mit Build 17627 eingeführt

Windows Defender Device Guard

Device Guard war schon immer eine Sammlung von Technologien, die kombiniert werden können, um einen PC zu sperren, einschließlich:

Softwarebasierter Schutz durch Codeintegritätsrichtlinien

Hardwarebasierter Schutz durch Hypervisor Protected Code Integrity (HVCI)

Diese Schutzmaßnahmen können aber auch separat konfiguriert werden

Und im Gegensatz zu HVCI erfordern Codeintegritätsrichtlinien keine virtualisierungsbasierte Sicherheit (VBS)

Um den eindeutigen Wert dieser Schutzmaßnahmen hervorzuheben, wurden die Codeintegritätsrichtlinien in Windows Defender Application Control umbenannt

Schutz der nächsten Generation

Endpunkterkennung und -reaktion

Verbesserte Endpunkterkennung und Reaktion

Unternehmenskunden können jetzt den vollständigen Windows-Sicherheitsstapel nutzen, der Microsoft Defender Antivirus-Erkennungen und Device Guard-Blöcke im Microsoft Defender für Endpoints-Portal anzeigt

Windows Defender ist jetzt Microsoft Defender Antivirus und teilt jetzt den Erkennungsstatus zwischen M365-Diensten und arbeitet mit Microsoft Defender für Endpoint

Darüber hinaus wurden zusätzliche Richtlinien implementiert, um den Cloud-basierten Schutz zu verbessern, und es stehen neue Kanäle für Notfallmaßnahmen zur Verfügung

Weitere Informationen finden Sie unter Viren- und Bedrohungsschutz und Verwenden von Technologien der nächsten Generation in Microsoft Defender Antivirus über von der Cloud bereitgestellten Schutz

Wir haben auch den Umfang der Dokumentationsbibliothek für Unternehmenssicherheitsadministratoren erweitert

Die neue Bibliothek enthält Informationen zu folgenden Themen:

Zu den Highlights der neuen Bibliothek gehören ein Microsoft Defender AV-Evaluierungsleitfaden und ein Microsoft Defender AV-Bereitstellungsleitfaden in einer virtuellen Desktopinfrastrukturumgebung

Zu den neuen Features für Microsoft Defender AV in Windows 10 Enterprise LTSC 2019 gehören:

Wir haben viel in den Schutz vor Ransomware investiert und setzen diese Investition mit aktualisierter Verhaltensüberwachung und ständigem Echtzeitschutz fort

Endpunkterkennung und Reaktion wurden ebenfalls verbessert

Zu den neuen Erkennungsfunktionen gehören:

Verwenden der Bedrohungserkennungs-API zum Erstellen benutzerdefinierter Warnungen: Lernen Sie Bedrohungserkennungskonzepte kennen, aktivieren Sie benutzerdefinierte Bedrohungserkennungsanwendungen und erstellen Sie benutzerdefinierte Bedrohungserkennungswarnungen für Ihr Unternehmen

Benutzerdefinierte Erkennung

Mit der benutzerdefinierten Erkennung können Sie beliebige benutzerdefinierte Abfragen erstellen, um Ereignisse im Zusammenhang mit verdächtigem Verhalten oder neuen Bedrohungen zu überwachen

Dies kann erreicht werden, indem die Leistungsfähigkeit der erweiterten Suche erhöht wird, indem benutzerdefinierte Erkennungsregeln erstellt werden

Verbesserungen des Betriebssystemspeichers und der Kernelsensoren, um die Erkennung von Angreifern mithilfe von Angriffen auf Speicher- und Kernelebene zu ermöglichen

Erkennung von Ransomware und anderen fortschrittlichen Angriffen

Die Funktion zur Erkennung historischer Daten stellt sicher, dass neue Erkennungsregeln für bis zu sechs Monate gespeicherte Daten gelten, um frühere Angriffe zu erkennen, die möglicherweise unbemerkt geblieben sind.

Die Reaktion auf Bedrohungen wird verbessert, wenn ein Angriff erkannt wird

Dies ermöglicht es Sicherheitsteams, sofort Maßnahmen zu ergreifen, um einen Verstoß einzudämmen:

Ergreifen Sie Gegenmaßnahmen auf einem Computer: Reagieren Sie schnell auf erkannte Angriffe, indem Sie Computer isolieren oder ein Scan-Paket sammeln

Ergreifen Sie Gegenmaßnahmen für eine Datei: Reagieren Sie schnell auf erkannte Angriffe, indem Sie Dateien stoppen oder unter Quarantäne stellen oder eine Datei blockieren

Zusätzliche Funktionen wurden hinzugefügt, damit Sie einen ganzheitlichen Überblick über Untersuchungen erhalten: Zu den weiteren erweiterten Sicherheitsfunktionen gehören:

Wir haben außerdem eine neue Bewertung für den Windows-Zeitdienst zum Abschnitt „Geräteleistung und -zustand“ hinzugefügt

Wenn wir feststellen, dass die Zeit Ihres Geräts nicht korrekt mit unseren Zeitservern synchronisiert wird und der Zeitsynchronisierungsdienst deaktiviert ist, bieten wir die Option, ihn wieder zu aktivieren

Wir arbeiten weiter daran, wie andere Sicherheitsanwendungen, die Sie installiert haben, in der Windows-Sicherheits-App angezeigt werden

Der Abschnitt Einstellungen der App enthält eine neue Seite namens Sicherheitsanbieter

Klicken Sie auf Anbieter verwalten, um eine Liste aller anderen Sicherheitsanbieter (einschließlich Antivirensoftware, Firewall und Webschutz) anzuzeigen, die auf Ihrem Gerät ausgeführt werden

Von hier aus können Sie einfach die App des Anbieters öffnen oder weitere Informationen zur Behebung der von Windows Security erkannten Probleme erhalten

Windows Security zeigt also mehr Links zu Sicherheitsanwendungen an

Wenn Sie beispielsweise den Abschnitt Firewall & Netzwerkschutz öffnen, sehen Sie die Firewall-Apps, die auf Ihrem Gerät unter jedem Firewall-Typ ausgeführt werden, einschließlich Domänen-, privater und öffentlicher Netzwerke

Besuch:

Weitere Informationen finden Sie unter „Neuerungen in Microsoft Defender für Endpoint“, um die Effektivität und Robustheit der Endpunktsicherheit weiter zu maximieren

Verschaffen Sie sich einen schnellen, aber detaillierten Einblick in Microsoft Defender for Endpoint für Windows 10: Defender for Endpoint

Schutz von Informationen

Verbesserungen wurden zu Windows Information Protection und BitLocker hinzugefügt

Windows-Informationsschutz

Windows Information Protection ist jetzt so konzipiert, dass es mit Microsoft Office und Azure Information Protection zusammenarbeitet

Weitere Informationen finden Sie unter Bereitstellen und Verwalten von Windows Information Protection (WIP) in Azure Information Protection

Mit Microsoft Intune können Sie Ihre Windows Information Protection (WIP)-Richtlinie erstellen und bereitstellen, einschließlich der Auswahl Ihrer zulässigen Apps, Ihrer WIP-Schutzebene und der Suche nach Unternehmensdaten im Netzwerk

Weitere Informationen finden Sie unter Erstellen einer Windows Information Protection (WIP)-Richtlinie mit Microsoft Intune und Zuordnen und Bereitstellen Ihrer Windows Information Protection (WIP)- und VPN-Richtlinien mit Microsoft Intune

Sie können Ihre Überwachungsprotokolle jetzt auch sammeln, indem Sie den Use Report Configuration Service Provider (CSP) oder die Windows-Ereignisweiterleitung (für in die Windows-Desktopdomäne eingebundene Geräte) verwenden

Weitere Informationen finden Sie im neuen Thema Sammeln von Windows Information Protection (WIP)-Überwachungsprotokollen

Diese Version ermöglicht WIP-Unterstützung mit Files On-Demand sowie Dateiverschlüsselung, während die Datei in einer anderen App geöffnet ist

Außerdem wird die Leistung verbessert

Weitere Informationen finden Sie unter OneDrive-Dateien bei Bedarf für Unternehmen.

BitLocker

Die minimale PIN-Länge wird von 4 auf 6 geändert, wobei 6 die Standardeinstellung ist

Weitere Informationen finden Sie unter BitLocker-Gruppenrichtlinieneinstellungen

Automatische Durchsetzung auf Festplatten

Eine Modern Device Management (MDM)-Richtlinie kann BitLocker für standardmäßig verbundene Azure Active Directory (AAD)-Benutzer im Hintergrund aktivieren

In Windows 10, Version 1803, wurde die automatische BitLocker-Verschlüsselung für Standard-AAD-Benutzer aktiviert

Voraussetzung dafür war jedoch eine moderne Hardware, die dem Hardware Security Test Interface (HSTI) entsprechen musste

Die neue Funktionalität ermöglicht BitLocker durch Richtlinien, selbst wenn Geräte nicht HSTI-konform sind.

Dies ist ein Update für den BitLocker CSP, das in Windows 10, Version 1703, eingeführt und von Intune und anderen Systemen genutzt wird.

Dieses Feature wird in unterstützt

Wird in Kürze aktiviert eine optionale Funktion bei Olympia Corp

Identitätsschutz

Verbesserungen für Windows Hello for Business und Credential Guard hinzugefügt

Windows Hello für Unternehmen

Neue Funktionen in Windows Hello ermöglichen eine bessere Gerätesperrung durch die Verwendung einer mehrstufigen Entsperrung mit neuen Standort- und Benutzerannäherungssignalen

Durch die Verwendung von Bluetooth-Signalen können Sie Ihr Windows 10-Gerät so konfigurieren, dass es automatisch gesperrt wird, wenn Sie sich davon entfernen, oder andere Personen daran hindern, auf das Gerät zuzugreifen, wenn Sie nicht in der Nähe sind

Zu den neuen Funktionen in Windows Hello for Business gehören :

Sie können jetzt eine vergessene PIN zurücksetzen, ohne vom Unternehmen verwaltete Daten oder Apps auf von Microsoft Intune verwalteten Geräten zu löschen

Bei Windows-Desktopcomputern können Benutzer eine vergessene PIN unter Einstellungen > Konten > Anmeldeoptionen zurücksetzen zurücksetzen

Weitere Informationen finden Sie unter Was passiert, wenn ich meine PIN vergesse?

Windows Hello unterstützt jetzt die FIDO 2.0-Authentifizierung für Azure AD-verbundene Windows 10-Geräte und hat die Unterstützung für gemeinsam genutzte Geräte erweitert, wie in Kioskkonfiguration beschrieben

Windows Hello funktioniert jetzt im S-Modus ohne Passwörter

Unterstützt S/MIME mit Windows Hello for Business und APIs für Nicht-Microsoft Identity Lifecycle Management-Lösungen

Windows Hello ist Teil des Kontoschutzes im Windows Defender Security Center

Der Kontoschutz empfiehlt Kennwortbenutzern, Windows Hello-Gesicht, Fingerabdruck oder PIN für eine schnellere Anmeldung einzurichten, und benachrichtigt Benutzer der dynamischen Sperre, wenn die dynamische Sperre nicht mehr funktioniert, weil das Bluetooth ihres Geräts deaktiviert ist

Sie können Windows Hello für MSA-Konten vom Sperrbildschirm aus einrichten

Wir haben es für Benutzer von Microsoft-Konten einfacher gemacht, Windows Hello auf ihren Geräten einzurichten, sodass die Anmeldung schneller und sicherer ist

Zuvor mussten Sie tief in die Einstellungen navigieren, um Windows Hello zu finden

Jetzt können Sie die Windows Hello-Gesichtserkennung, den Fingerabdruck oder die PIN direkt auf Ihrem Sperrbildschirm einrichten, indem Sie unter den Anmeldeoptionen auf die Windows Hello-Kachel klicken

Eine neue öffentliche API für das SSO eines zweiten Kontos ist für einen bestimmten Identitätsanbieter verfügbar

Das ist es Einfachere Einrichtung der dynamischen Sperre und zusätzliche WD SC-Benachrichtigungen, die eine Aktion erfordern, wenn die dynamische Sperre nicht mehr funktioniert (z

B

Bluetooth des Geräts deaktiviert ist)

Weitere Informationen finden Sie unter Sichere und einfache Authentifizierung mit Windows Hello und FIDO2-Sicherheitsschlüsseln für gemeinsam genutzte Geräte aktivieren

Windows Defender Credential Guard

Windows Defender Credential Guard ist ein Sicherheitsdienst in Windows 10, der darauf ausgelegt ist, Active Directory (AD)-Domänenanmeldeinformationen vor Diebstahl oder Missbrauch durch Malware auf dem Computer eines Benutzers zu schützen

Es schützt vor bekannten Bedrohungen wie Pass-the-Hash und Credential Harvesting.

Windows Defender Credential Guard war schon immer eine optionale Funktion, aber Windows 10 im S-Modus aktiviert diese Funktion standardmäßig, wenn der Computer Azure Active Directory beigetreten ist

Dies bietet eine zusätzliche Sicherheitsstufe beim Herstellen einer Verbindung mit Domänenressourcen, die normalerweise nicht auf Geräten mit Windows 10 im S-Modus vorhanden sind

Hinweis: Windows Defender Credential Guard ist nur für S-Modus-Geräte oder Enterprise- und Education-Editionen verfügbar

Weitere Informationen finden Sie unter Anmeldeinformationen Überlegungen zur Guard-Sicherheit.

Weitere Sicherheitsverbesserungen

Windows-Sicherheitsprinzipien

Microsoft hat neue Windows-Sicherheitsbaselines für Windows Server und Windows 10 veröffentlicht

Eine Sicherheitsbaseline ist eine Reihe von von Microsoft empfohlenen Konfigurationseinstellungen, die eine Erläuterung ihrer Auswirkungen auf die Sicherheit enthalten

Weitere Informationen und zum Herunterladen des Richtlinienanalysetools finden Sie unter Microsoft Security Compliance Toolkit 1.0

Windows-Sicherheitsprinzipien für Windows 10 aktualisiert

Sicherheitsprinzipien sind eine Gruppe von von Microsoft empfohlenen Konfigurationseinstellungen, die Auswirkungen auf die Sicherheit erläutern

Weitere Informationen und zum Herunterladen des Richtlinienanalysetools finden Sie unter Microsoft Security Compliance Toolkit 1.0

Die neue Sicherheitsbaseline für Windows 10 Version 1803 wurde veröffentlicht

SMBLoris-Schwachstelle

Es wurde ein als SMBLoris gekennzeichnetes Problem behoben, das zu Denial-of-Service führen konnte

Windows-Sicherheitscenter

Windows Defender Security Center ist jetzt Windows Security Center

Sie können die App weiterhin wie gewohnt öffnen – fordern Sie Cortana einfach auf, das Windows Security Center (WSC) zu öffnen, oder verwenden Sie das Symbol in der Taskleiste

Mit WSC können Sie alle Ihre Sicherheitsfeatures verwalten, einschließlich Microsoft Defender Antivirus und Windows Defender Firewall

Der WSC-Dienst erfordert jetzt, dass Antivirenprodukte als geschützter Prozess zur Registrierung ausgeführt werden

Produkte, die dies noch nicht implementiert haben, werden nicht in der Benutzeroberfläche des Windows-Sicherheitscenters angezeigt, und Microsoft Defender Antivirus bleibt zusammen mit diesen Produkten aktiviert

WSC enthält jetzt die beliebten Elemente des Fluent Design-Systems

Wir haben auch Ränder und Abstände in der App angepasst

Die Kategorien auf der Hauptseite werden nun dynamisch angepasst, wenn mehr Platz für zusätzliche Informationen benötigt wird

Wir haben auch die Titelleiste aktualisiert, um Ihre Akzentfarbe zu verwenden, wenn Sie diese Option in den Farbeinstellungen aktiviert haben.

Gruppenrichtlinien-Sicherheitsoptionen

Die Sicherheitseinstellung Interaktive Anmeldung: Benutzerinformationen anzeigen, wenn Sitzung gesperrt ist, wurde aktualisiert, um mit der Sicherheitseinstellung unter Einstellungen > Konten > Anmeldeoptionen kompatibel zu sein

Eine neue Sicherheitsrichtlinieneinstellung für die interaktive Anmeldung: Benutzername bei der Anmeldung nicht anzeigen wurde in Windows 10 Enterprise LTSC 2019 eingeführt

Diese Sicherheitsrichtlinieneinstellung bestimmt, ob der Benutzername während der Anmeldung angezeigt wird

Diese Einstellung ist mit der Datenschutzeinstellung unter Einstellungen > Konten > Anmeldeoptionen kompatibel

Die Einstellung wirkt sich nur auf die Kachel Andere Benutzer aus

Windows 10 im S-Modus

Wir haben weiter am Abschnitt „Aktuelle Bedrohungen“ im Viren- und Bedrohungsschutz gearbeitet, der jetzt alle Bedrohungen anzeigt, die Maßnahmen erfordern

Auf diesem Bildschirm können Sie schnell auf Bedrohungen reagieren:

Einsatz

MBR2GPT.EXE

MBR2GPT.EXE ist ein neues Befehlszeilentool, das mit Windows 10 Version 1703 eingeführt wurde und auch in Windows 10 Enterprise LTSC 2019 (und höher) verfügbar ist

MBR2GPT konvertiert eine Festplatte vom Partitionsstil des Master Boot Record (MBR) in die GUID-Partitionstabelle (GPT), ohne Daten auf der Festplatte zu ändern oder zu löschen

Das Programm ist für die Ausführung über eine Windows Preinstallation Environment (Windows PE)-Befehlszeile konzipiert, kann aber auch vom vollständigen Windows10-Betriebssystem (OS) ausgeführt werden

Das GPT-Partitionsformat ist neueren Datums und ermöglicht die Verwendung größerer und zusätzlicher Festplattenpartitionen

Darüber hinaus bietet dieses Format eine höhere Datenzuverlässigkeit, Unterstützung für mehr Partitionstypen und ermöglicht schnellere Start- und Herunterfahrgeschwindigkeiten

Wenn Sie die Systemfestplatte auf einem Computer von MBR in GPT konvertieren, müssen Sie den Computer auch so konfigurieren, dass er im UEFI-Modus startet

Auf diese Weise stellen Sie sicher, dass Ihr Gerät UEFI unterstützt, bevor Sie versuchen, die Systemfestplatte zu konvertieren

Folgende Windows 10-Sicherheitsfunktionen, die beim Booten im UEFI-Modus aktiviert werden, sind ebenfalls enthalten: Secure Boot, Antimalware Driver Early Launch (Early Launch Antimalware, ELAM), Windows Trusted Boot, Controlled Boot, Device Guard, Credential Guard und BitLocker Network Unlock.

Siehe MBR2GPT.EXE für Details.

DISM

Die folgenden neuen DISM-Befehle wurden hinzugefügt, um Funktionsupdates zu verwalten:

DISM /Online /Initiate-OSUninstall Startet eine Deinstallation des Betriebssystems, um den Computer auf die vorherige Installation von Windows zurückzusetzen

DISM /Online /Remove-OSUninstall Entfernt die Deinstallationsfunktion des Betriebssystems vom Computer

DISM /Online /Get-OSUninstallWindow Zeigt an, wie viele Tage nach dem Upgrade die Deinstallation durchgeführt werden kann

DISM /Online /Set-OSUninstallWindow Legt fest, wie viele Tage nach dem Upgrade die Deinstallation durchgeführt werden kann

Weitere Informationen finden Sie unter DISM – Befehlszeilenoptionen zum Deinstallieren des Betriebssystems

Windows-Setup

Sie können jetzt neben Windows Setup Ihre eigenen benutzerdefinierten Aktionen oder Skripts ausführen

Setup migriert auch Ihre Skripts zum nächsten Feature-Release, sodass Sie sie nur einmal hinzufügen müssen

Voraussetzungen:

Windows 10, Version 1803 oder Windows 10 Enterprise LTSC 2019 oder höher

Windows 10 Enterprise oder Pro

Weitere Informationen finden Sie unter Durchführen benutzerdefinierter Aktionen während der Funktionsaktualisierung

Es ist jetzt auch möglich, ein Skript auszuführen, wenn der Benutzer seine Windows-Version mit der PostRollback-Option zurücksetzt

/PostRollback [\setuprollback.cmd] [ /postrollback {system/admin}]

Weitere Informationen finden Sie unter Windows Setup-Befehlszeilenoptionen

Außerdem stehen neue Befehlszeilenoptionen zur Steuerung von BitLocker zur Verfügung:

Setup.exe /BitLocker AlwaysSuspend BitLocker wird während des Upgrades immer angehalten

Setup.exe /BitLocker TryKeepActive Aktivieren Sie das Upgrade, ohne BitLocker anzuhalten

Wenn das Upgrade jedoch nicht funktioniert, halten Sie BitLocker an und schließen Sie das Upgrade ab

Setup.exe /BitLocker ForceKeepActive Aktivieren Sie das Upgrade, ohne BitLocker zu stoppen

Wenn das Upgrade jedoch nicht funktioniert, schlägt das Upgrade fehl

Weitere Informationen finden Sie unter Windows Setup-Befehlszeilenoptionen

Teile der Offline-Phase einer Windows-Update-Arbeit wurden in die Online-Phase verschoben

Dies hat zu einer erheblichen Reduzierung der Offlinezeit beim Installieren von Updates geführt

Weitere Informationen finden Sie unter Wir hören Ihnen zu

SetupDiag

SetupDiag ist ein neues Befehlszeilentool, mit dem Sie feststellen können, warum ein Windows 10-Update fehlgeschlagen ist.

Dazu durchsucht SetupDiag die Protokolldateien von Windows Setup

Beim Durchsuchen von Protokolldateien verwendet Setupdiag eine Reihe von Regeln, um bekannte Probleme zu überprüfen

In der aktuellen Version von SetupDiag enthält die Datei rules.xml 53 Regeln, die extrahiert werden, wenn SetupDiag ausgeführt wird

Die Datei rules.xml wird aktualisiert, sobald neue Versionen von SetupDiag verfügbar sind

Anmelden

Melden Sie sich schneller bei einem gemeinsam genutzten Windows 10-PC an

Wenn Sie gemeinsam genutzte Geräte an Ihrem Arbeitsplatz bereitgestellt haben, können Benutzer die Schnellanmeldung im Handumdrehen verwenden, um sich bei einem gemeinsam genutzten Windows 10-PC anzumelden!

So aktivieren Sie die Schnellanmeldung:

Richten Sie ein freigegebenes oder Gastgerät ein, auf dem Windows 10, Version 1809 oder Windows 10 Enterprise LTSC 2019 ausgeführt wird

Legen Sie den Richtlinien-CSP und die Richtlinien Authentifizierung und EnableFastFirstSignIn fest, um die schnelle Anmeldung zu ermöglichen

Melden Sie sich über einen gemeinsam genutzten PC bei Ihrem Konto an

Sie werden den Unterschied bemerken!

Webanmeldung bei Windows 10

Bisher unterstützte die Windows-Anmeldung nur die Verwendung von Identitäten, die ADFS oder anderen Anbietern zugeordnet sind, die das WS-Fed-Protokoll unterstützen

Mit „Web Login“ führen wir eine neue Art der Anmeldung am Windows-PC ein

Die Webanmeldung aktiviert die Windows-Anmeldeunterstützung für andere Verbundanbieter als ADFS (z

B

SAML)

Testen Sie die Webanmeldung wie folgt:

Stellen Sie sicher, dass Ihr Windows 10-PC zu einer Azure AD-Domäne gehört

(Die Webanmeldung wird nur auf Azure AD-Computern unterstützt)

Aktivieren Sie die Webanmeldung über Richtlinien-CSP, Authentifizierung und EnableWebSignIn-Richtlinien

Wählen Sie Webanmeldung aus den Anmeldeoptionen auf dem Sperrbildschirm

Klicken Sie auf die Schaltfläche Anmelden, um fortzufahren

Windows-Analytics

Upgrade-Bereitschaft

Wichtig Die Upgrade-Bereitschaft erlaubt es Ihnen nicht, ein Upgrade auf eine LTSC-Version zu bewerten (LTSC-Builds sind nicht als Zielversionen verfügbar)

Sie können jedoch Geräte registrieren, auf denen LTSC ausgeführt wird, um ein Upgrade auf eine Version des General Availability Channel zu planen

Mit Upgrade Readiness können Sie sicherstellen, dass Anwendungen und Treiber für ein Upgrade auf Windows 10 bereit sind

Die Lösung hält Anwendungen und Treiber auf dem neuesten Stand und bietet Informationen zu bekannten Problemen, Anleitungen zur Fehlerbehebung sowie Bereitschafts- und Nachverfolgungsdetails für einzelne Geräte

Das Upgrade-Readiness-Tool wurde nach der öffentlichen Vorschau am 2

März 2017 allgemein verfügbar gemacht

Die Entwicklung der Upgrade-Readiness wurde stark von Community-Beiträgen beeinflusst, und die Entwicklung neuer Funktionen wird fortgesetzt

Um Upgrade Readiness zu nutzen, fügen Sie das Programm zunächst einem vorhandenen Operation Management Suite (OMS)-Arbeitsbereich hinzu oder registrieren Sie sich bei einem neuen OMS-Arbeitsbereich, in dem die Upgrade Readiness-Lösung aktiviert ist

Weitere Informationen zur Upgrade-Bereitschaft finden Sie in den folgenden Themen:

See also  The Best excel wenn dann bild anzeigen Update New

Die Upgrade-Bereitschaft bietet Einblicke in Anwendungs- und Treiberkompatibilitätsprobleme

Zu den neuen Funktionen gehören eine bessere App-Abdeckung, Zustandsberichte nach dem Update und erweiterte Filterfunktionsberichte

Weitere Informationen finden Sie unter Verwalten von upgradefähigen Windows-Upgrades für Unternehmen

Die Updateüberwachung hält die Windows 10-Geräte Ihres Unternehmens sicher und auf dem neuesten Stand.

Update Monitoring ist eine auf OMS Log Analytics basierende Lösung, die Auskunft über den Installationsstatus von monatlichen Qualitäts- und Funktionsupdates gibt

Außerdem werden Details zum Fortschritt der Bereitstellung vorhandener Updates und zum Status zukünftiger Updates bereitgestellt

Sie können sich auch über Geräte informieren, bei denen möglicherweise ein Problem vorliegt, das behoben werden muss

Weitere Informationen zu Update Monitor finden Sie unter Überwachen von Windows-Updates mit Update Monitor

Neue Funktionen in Update Monitor ermöglichen es Ihnen, den Schutzstatus von Windows Defender zu überwachen, die Kompatibilität mit Branchenpartnern zu vergleichen und die Bandbreite für die Updatebereitstellung zu optimieren

Weitere Informationen finden Sie unter Überwachen von Windows-Updates und Microsoft Defender Antivirus mit Updatekompatibilität

Gerätezustand

Die Verwaltung von Geräten wird mit Device Health vereinfacht, einem neuen Analysetool, das Geräte und Treiber identifiziert, die häufig abstürzen und möglicherweise neu erstellt oder ersetzt werden müssen

Weitere Informationen finden Sie unter Überwachen des Gerätezustands mit Device Health

Barrierefreiheit

Die integrierten Zugänglichkeitsfunktionen wurden mit automatisch generierten Bildbeschreibungen verbessert

Weitere Informationen zur Barrierefreiheit finden Sie unter Informationen zur Barrierefreiheit für IT-Experten

Weitere Informationen finden Sie im Abschnitt „Barrierefreiheit“ des Blogbeitrags „Neuerungen in Windows 10, April 2018 Update“.

Datenschutz

Auf der Seite „Feedback und Einstellungen“ können Sie nun unter „Datenschutzeinstellungen“ die Diagnosedaten löschen, die Ihr Gerät an Microsoft gesendet hat

Sie können diese Diagnosedaten auch mit der Diagnostic Data Viewer-App anzeigen

Aufbau

Kiosk-Konfiguration

Das neue Chromium-basierte Microsoft Edge bietet zahlreiche Verbesserungen speziell für Kioske

Es ist jedoch nicht in der LTSC-Version von Windows 10 enthalten

Sie können Microsoft Edge hier separat herunterladen und installieren

Internet Explorer ist in Windows 10 LTSC-Versionen enthalten, da sich sein Funktionsumfang nicht ändert, und er erhält weiterhin Sicherheitspatches für die Lebensdauer einer Windows 10 LTSC-Version

Wenn Sie die Kioskfunktionen in Edge verwenden, ziehen Sie den Kioskmodus mit einem halbjährlichen Veröffentlichungskanal in Betracht

Geteilte Verwaltung

Intune- und Microsoft Endpoint Manager-Richtlinien hinzugefügt, um die hybride Azure AD-Authentifizierung zu aktivieren

Mobile Device Management (MDM) verfügt über mehr als 150 neue Richtlinien und Einstellungen, die in dieser Version hinzugefügt wurden, einschließlich der MDMWinsOverGP-Richtlinie, um den Übergang zur Cloud-basierten Verwaltung zu erleichtern

Weitere Informationen finden Sie unter Neuerungen bei der MDM-Registrierung und -Verwaltung

Zeitraum für die Deinstallation des Betriebssystems

Der Zeitraum für die Deinstallation des Betriebssystems ist der Zeitraum, in dem Benutzer ein Windows 10-Update rückgängig machen können

Ab dieser Version können Administratoren Intune oder DISM verwenden, um den Deinstallationszeitraum des Betriebssystems anzupassen

Azure Active Directory-Beitritt in großen Mengen

Mit den neuen Assistenten im Windows-Konfigurations-Designer können Sie Bereitstellungspakete erstellen, um Geräte in Azure Active Directory zu registrieren

Der Massenbeitritt zu Azure AD ist in Desktop-, Mobil-, Kiosk- und Surface Hub-Assistenten verfügbar

Windows-Spotlight

Die folgenden neuen Gruppenrichtlinien- und Mobile Device Management-Einstellungen werden hinzugefügt, um Sie bei der Konfiguration der Windows Spotlight-Benutzeroberfläche zu unterstützen

Deaktivieren von Windows Spotlight im Action Center

Verwenden Sie keine Diagnosedaten für benutzerdefinierte Skins

Deaktivieren Sie die Windows-Willkommensseite

Erfahren Sie mehr über Windows-Spotlight

Start- und Taskleistenlayout

Bisher konnte die benutzerdefinierte Taskleiste nur mithilfe von Gruppenrichtlinien oder Bereitstellungspaketen bereitgestellt werden

Windows 10 Enterprise LTSC 2019 fügt Unterstützung für benutzerdefinierte Taskleisten für MDM hinzu

Zusätzliche MDM-Richtlinieneinstellungen sind für das Start- und Taskleistenlayout verfügbar

Dazu gehören die folgenden neuen MDM-Richtlinieneinstellungen:

Windows-Insider für Unternehmen

Wir haben kürzlich die Option zum Herunterladen von Windows 10 Insider Preview-Builds mit Ihren Unternehmensanmeldeinformationen in Azure Active Directory (Azure AD) hinzugefügt

Durch die Registrierung von Geräten in Azure AD erhöhen Sie die Sichtbarkeit des von Benutzern in Ihrer Organisation übermittelten Feedbacks, insbesondere zu Funktionen, die Ihre spezifischen Geschäftsanforderungen unterstützen

Weitere Informationen finden Sie unter Windows-Insider-Programm für Unternehmen

Sie können jetzt Ihre Azure AD-Domänen beim Windows-Insider-Programm registrieren

Weitere Informationen finden Sie unter Übersicht über das Windows-Insider-Programm für Unternehmen

Mit den in Windows 10 Enterprise LTSC 2019 bereitgestellten Änderungen werden Express-Updates jetzt vollständig mit Microsoft Endpoint Configuration Manager unterstützt, beginnend mit Version 1702 von Configuration Manager, und mit anderen Update- und Verwaltungsprodukten von Drittanbietern, die diese neue Funktionalität implementieren

Dies erfolgt zusätzlich zur aktuellen Unterstützung für Express-Updates auf Windows Update, Windows Update for Business und WSUS

Dank der Richtlinien für Übermittlungsoptimierungen können Sie jetzt zusätzliche Einschränkungen für mehr Kontrolle in verschiedenen Szenarien aktivieren

Zusätzliche Richtlinien umfassen:

Weitere Informationen finden Sie unter Konfigurieren der Übermittlungsoptimierung für Windows 10-Updates

Installieren Sie integrierte Apps, die nicht installiert sind, nicht mehr automatisch neu

Ab Windows 10 Enterprise LTSC 2019 werden vom Benutzer deinstallierte In-Box-Apps im Rahmen der Feature-Update-Installation nicht automatisch neu installiert

Darüber hinaus werden Apps, die von Administratoren auf Computern mit Windows 10 Enterprise LTSC 2019 installiert wurden, nicht mehr bereitgestellt, auch nach zukünftigen Installationen von Funktionsupdates

Dies gilt nicht für das Update von Windows 10 Enterprise LTSC 2016 (oder früher) auf Windows 10 Enterprise LTSC 2019

Verwaltung

Neue MDM-Funktionen

Windows 10 Enterprise LTSC 2019 fügt viele neue Configuration Service Provider (CSPs) hinzu, die neue Funktionen für die Verwaltung von Windows 10-Geräten mit MDM oder Bereitstellungspaketen bereitstellen

Unter anderem können Sie diese CSPs verwenden, um einige hundert der nützlichsten Gruppenrichtlinieneinstellungen über MDM zu konfigurieren, siehe Richtlinien-CSP – Richtlinien für ADMX-Sicherungen

Einige der neuen CSPs umfassen:

Mit dem DynamicManagement CSP können Sie Geräte individuell nach Standort, Netzwerk oder Zeit verwalten

Mit verwalteten Geräten können Sie beispielsweise die Kamera an Ihrem Arbeitsplatz ausschalten, den Mobilfunkdienst deaktivieren, wenn Sie ins Ausland reisen, um Roaming-Gebühren zu sparen, oder sogar drahtlose Netzwerkverbindungen deaktivieren, wenn sich das Gerät außerhalb von Firmengebäuden oder dem Campus befindet

Nach der Konfiguration werden diese Einstellungen erzwungen, selbst wenn das Gerät den Verwaltungsserver nicht erreichen kann, wenn sich der Standort oder das Netzwerk ändert

Der Dynamic Management CSP ermöglicht die Konfiguration von Richtlinien, die die Art und Weise ändern, wie das Gerät verwaltet wird, und die Bedingungen, unter denen die Änderung vorgenommen wird.

Der CleanPC CSP ermöglicht das Entfernen von vom Benutzer installierten und vorinstallierten Anwendungen und bietet eine Option zum Beibehalten von Benutzerdaten

Der BitLocker CSP wird verwendet, um die Verschlüsselung von Computern und Geräten zu verwalten

Beispielsweise können Sie die Verschlüsselung von Speicherkarten auf Mobilgeräten oder die Verschlüsselung von Betriebssystemlaufwerken anfordern

Der NetworkProxy-CSP wird verwendet, um einen Proxyserver für Ethernet- und WLAN-Verbindungen zu konfigurieren

Der Office-CSP ermöglicht die Installation eines Microsoft Office-Clients auf einem Gerät mit dem Office-Bereitstellungstool

Weitere Informationen finden Sie unter Konfigurationsoptionen für das Office-Bereitstellungstool

Der EnterpriseAppVManagement-CSP wird zum Verwalten virtueller Anwendungen auf Windows 10-Computern (Enterprise und Education) verwendet und ermöglicht das Streamen von App-V-sequenzierten Apps auf Computer, selbst wenn sie von MDM gehostet werden

IT-Experten können das neue MDM-Migrationsanalysetool (MMAT) verwenden, um festzustellen, welche Gruppenrichtlinieneinstellungen für einen Benutzer oder Computer konfiguriert wurden, und diese Einstellungen mit einer integrierten Liste unterstützter MDM-Richtlinien vergleichen

MMAT kann XML- und HTML-Berichte generieren, die den Grad der Unterstützung für jede Gruppenrichtlinieneinstellung und die MDM-Compliance angeben.

Erfahren Sie mehr über die neuen MDM-Funktionen.

MDM wurde erweitert, um in die Domäne eingebundene Geräte einzubeziehen, auf denen die Azure Integrate Active Directory-Registrierung ausgeführt wird

Gruppenrichtlinien können mit Active Directory-verbundenen Geräten verwendet werden, um die automatische Registrierung bei MDM auszulösen

Weitere Informationen finden Sie unter Automatisches Registrieren eines Windows 10-Geräts mithilfe von Gruppenrichtlinien

Außerdem wurden mehrere neue Konfigurationselemente hinzugefügt

Weitere Informationen finden Sie unter Neuerungen bei der MDM-Registrierung und -Verwaltung

Mobile Application Management für Windows 10

Die Windows-Version von Mobile Application Management (MAM) ist eine einfache Lösung zur Verwaltung des Unternehmensdatenzugriffs und der Sicherheit auf privaten Geräten

Die MAM-Unterstützung ist ab Windows 10 Enterprise LTSC 2019 in Windows on Windows Information Protection (WIP) integriert

Weitere Informationen finden Sie unter Implementieren von serverseitiger Unterstützung für die Verwaltung mobiler Anwendungen in Windows

MDM-Diagnose

In Windows 10 Enterprise LTSC 2019 setzen wir unsere Arbeit fort, um die Diagnoseerfahrung für die moderne Verwaltung zu verbessern

Durch die Einführung der automatischen Protokollierung für mobile Geräte sammelt Windows automatisch Protokolle, wenn MDM auf einen Fehler stößt, wodurch die Notwendigkeit entfällt, sich ständig bei Geräten mit eingeschränktem Speicher anzumelden

Außerdem wird der Microsoft Message Analyzer als Add-On-Programm vorgestellt, mit dem Supportmitarbeiter die Ursache eines Problems schnell identifizieren und so Zeit und Geld sparen können

Anwendungsvirtualisierung für Windows (App-V)

In früheren Versionen von Microsoft Application Virtualization Sequencer (App-V Sequencer) musste die Sequenzierungsumgebung manuell erstellt werden

Windows 10 Enterprise LTSC 2019 führt zwei neue PowerShell-Cmdlets ein, New-AppVSequencerVM und Connect-AppvSequencerVM, die Ihre Sequenzierungsumgebung automatisch für Sie erstellen, einschließlich der Bereitstellung Ihrer virtuellen Maschine

Außerdem wurde der App-V-Sequenzer aktualisiert

Sie können jetzt mehrere Apps gleichzeitig sequenzieren und aktualisieren, Ihre Anpassungen in einer App-V-Projektvorlagendatei (.appvt) erfassen und speichern und PowerShell- oder Gruppenrichtlinieneinstellungen verwenden, um Ihre unveröffentlichten Pakete nach dem Neustart des Geräts automatisch zu löschen

Weitere Informationen finden Sie in den folgenden Themen:

Erfahren Sie mehr über die Diagnosedaten, die auf der Ebene „Basic“ erfasst werden, und einige Beispiele für die Arten von Daten, die auf der Ebene „Full“ erfasst werden

Gruppenrichtlinientabelle

Erfahren Sie mehr über die neuen Gruppenrichtlinien, die in Windows 10 Enterprise LTSC 2019 hinzugefügt wurden

Mixed Reality-Apps

Diese Version von Windows 10 ist eine Einführung in Windows Mixed Reality

Organisationen, die Windows Server Update Services (WSUS) verwenden, müssen Maßnahmen ergreifen, um Windows Mixed Reality zu aktivieren

Sie können die Nutzung von Windows Mixed Reality auch untersagen, indem Sie die Installation des Mixed-Reality-Portals blockieren

Weitere Informationen finden Sie unter Aktivieren oder Blockieren von Mixed-Reality-Apps im Unternehmen

Vernetzung

Netzwerkstapel

In dieser Version sind mehrere Netzwerk-Stack-Verbesserungen verfügbar

Einige dieser Funktionen waren auch in Windows 10, Version 1703, verfügbar

Weitere Informationen finden Sie unter Kernnetzwerk-Stack-Funktionen in Creators Update für Windows 10

Miracast über Infrastruktur

In dieser Version von Windows 10 hat Microsoft die Möglichkeit verbessert, einen Miracast-Stream über ein lokales Netzwerk statt über eine direkte drahtlose Verbindung zu senden

Diese Funktion basiert auf Miracast over Infrastructure Connection Establishment Protocol (MS-MICE)

Wie es funktioniert

Benutzer versuchen wie zuvor, eine Verbindung zu einem Miracast-Empfänger herzustellen

Wenn die Liste der Miracast-Empfänger ausgefüllt ist, erkennt Windows 10, dass der Empfänger eine Verbindung über die Infrastruktur unterstützen kann

Wenn der Benutzer einen Miracast-Empfänger auswählt, versucht Windows 10, den Hostnamen des Geräts mithilfe von Standard-DNS-Protokollen und Multicast-DNS (mDNS) aufzulösen

Wenn der Name nicht mit beiden DNS-Methoden aufgelöst werden kann, greift Windows 10 auf die Erstellung einer Miracast-Sitzung mit der standardmäßigen Wi-Fi Direct-Verbindung zurück

Miracast über Infrastruktur bietet eine Reihe von Vorteilen

Windows erkennt automatisch, ob das Senden von Videodaten über diesen Pfad möglich ist

Windows wählt diese Route nur, wenn die Verbindung über Ethernet oder ein sicheres WLAN-Netzwerk hergestellt wird

Benutzer müssen die Art und Weise, wie sie sich mit einem Miracast-Empfänger verbinden, nicht ändern

Sie verwenden die gleiche Benutzererfahrung wie Standard-Miracast-Verbindungen

Es sind keine Änderungen am aktuellen Wireless-Treiber oder an der PC-Hardware erforderlich

Es funktioniert gut mit älterer drahtloser Hardware, die nicht für Miracast über Wi-Fi Direct optimiert ist

Es verwendet eine vorhandene Verbindung, wodurch die Verbindungszeit verkürzt und ein sehr stabiler Stream bereitgestellt wird

Aktivieren von Miracast über die Infrastruktur

Wenn Sie ein Gerät haben, das auf Windows 10 Enterprise LTSC 2019 aktualisiert wurde, verfügen Sie automatisch über diese neue Funktion

Um die Funktion in Ihrer Umgebung zu verwenden, stellen Sie sicher, dass Ihre Bereitstellung Folgendes umfasst:

Auf dem Gerät (PC oder Surface Hub) muss Windows 10, Version 1703, Windows 10 Enterprise LTSC 2019 oder höher ausgeführt werden

Ein Windows-PC oder Surface Hub kann als Miracast-over-Infrastructure-Empfänger dienen

Ein Windows-Gerät kann als Quelle für Miracast over Infrastructure dienen

Als Miracast-Empfänger muss der PC oder Surface Hub über Ethernet oder eine sichere WLAN-Verbindung (z

B

mit WPA2-PSK oder WPA2-Enterprise-Sicherheit) mit Ihrem Unternehmensnetzwerk verbunden sein

Wenn der Hub mit einer offenen WLAN-Verbindung verbunden ist, deaktiviert sich Miracast over Infrastructure von selbst

Als Miracast-Quelle muss das Gerät über Ethernet oder eine sichere WLAN-Verbindung mit demselben Unternehmensnetzwerk verbunden sein.

Der DNS-Hostname (Gerätename) des Geräts muss über Ihre DNS-Server auflösbar sein

Sie können dies erreichen, indem Sie Ihr Gerät automatisch über Dynamic DNS registrieren oder indem Sie manuell einen A- oder AAAA-Eintrag für den Hostnamen des Geräts erstellen

Windows 10-PCs müssen über Ethernet oder eine sichere WLAN-Netzwerkverbindung mit demselben Unternehmensnetzwerk verbunden sein

Wichtig Miracast über Infrastruktur ist kein Ersatz für Standard-Miracast

Stattdessen ist die Funktionalität eine Ergänzung und bietet einen Vorteil für Benutzer, die dem Unternehmensnetzwerk angehören

Benutzer, die Gäste an einem bestimmten Standort sind und keinen Zugriff auf das Unternehmensnetzwerk haben, können sich dennoch mit der Wi-Fi Direct-Verbindungsmethode verbinden

Verbesserungen des Registrierungseditors

Wir haben eine Dropdown-Liste hinzugefügt, die während der Eingabe angezeigt wird, um den nächsten Teil des Pfads zu vervollständigen

Sie können auch STRG+RÜCKTASTE drücken, um das letzte Wort zu löschen, und STRG+ENTF, um das nächste Wort zu löschen

Remotedesktop mit Biometrie

Benutzer von Azure Active Directory und Active Directory, die Windows Hello for Business verwenden, können Biometrie verwenden, um sich für eine Remotedesktopsitzung zu authentifizieren

Melden Sie sich zunächst mit Windows Hello for Business bei Ihrem Gerät an

Gehen Sie zu Remotedesktopverbindung (mstsc.exe), geben Sie den Namen des Computers ein, zu dem Sie eine Verbindung herstellen möchten, und klicken Sie auf Verbinden

Windows merkt sich, dass Sie sich mit Windows Hello for Business angemeldet haben, und wählt Windows Hello for Business automatisch aus, um Sie für Ihre RDP-Sitzung zu authentifizieren

Sie können auch auf Weitere Optionen klicken, um andere Anmeldeinformationen auszuwählen

Die Gesichtserkennung wird von Windows verwendet, um die RDP-Sitzung mit dem Windows Server 2016 Hyper-V-Server zu authentifizieren

Sie können Windows Hello for Business weiterhin in der Remotesitzung verwenden, aber Sie müssen Ihre PIN angeben

Siehe das Beispiel unten:

Weitere Informationen

Windows 10 Enterprise LTSC: Eine kurze Beschreibung des LTSC-Wartungskanals mit Links zu Informationen zu jeder Version.

Show Control Deutsch New Update

Video unten ansehen

Neues Update zum Thema da die ausführung von skripts auf diesem system deaktiviert ist

Link to the project file https://bit.ly/3HTx46y
Please download the latest beta from your ioversal user-account to use this sample project file.

da die ausführung von skripts auf diesem system deaktiviert ist Sie können die schönen Bilder im Thema sehen

 New Update Show Control Deutsch
Show Control Deutsch Update

Konfiguration — phpMyAdmin 5.3.0-dev Dokumentation Neueste

Konfiguration¶. Alle konfigurierbaren Daten werden in config.inc.php im obersten Verzeichnis von phpMyAdmin abgelegt. Wenn diese Datei nicht existiert, lesen Sie bitte den Abschnitt Installation, um eine zu erstellen.Diese Datei muss nur die Parameter enthalten, die Sie von ihrem entsprechenden Standardwert in libraries/config.default.php ändern wollen (diese Datei ist

+ mehr hier sehen

Read more

Für eine einfachere Einrichtung können Sie setup/ * * verwenden

Alle Anweisungen werden in der Dokumentation im Ordner doc/ * oder unter erklärt

*/ Erklären (strenge_Typen = 1); /** * Dies wird für die Cookie-basierte Authentifizierung benötigt, um das Passwort im * Cookie zu verschlüsseln

Muss 32 Zeichen lang sein

*/ $cfg [ ‘blowfish_secret’ ] = ” ; /* SIE MÜSSEN DIES FÜR DIE COOKIE-AUTH AUSFÜLLEN! */ /** * Serverkonfiguration */ $i = 0 ; /** * Erster Server */ $i ++ ; /* Authentifizierungstyp */ $cfg [ ‘Server’ ][ $i ][ ‘auth_type’ ] = ‘cookie’ ; /* Serverparameter */ $cfg [ ‘Server’ ][ $i ][ ‘host’ ] = ‘localhost’ ; $cfg [ ‘Server’ ][ $i ][ ‘komprimieren’ ] = false ; $cfg [ ‘Server’ ][ $i ][ ‘AllowNoPassword’ ] = false ; /** * phpMyAdmin-Konfigurationsspeichereinstellungen

*/ /* Benutzer verwendet, um mit Speicher zu manipulieren */ // $cfg[‘Servers’][$i][‘controlhost’] = ”; // $cfg[‘Server’][$i][‘controlport’] = ”; // $cfg[‘Server’][$i][‘controluser’] = ‘pma’; // $cfg[‘Server’][$i][‘controlpass’] = ‘pmapass’; /* Speicherdatenbank und Tabellen */ // $cfg[‘Servers’][$i][‘pmadb’] = ‘phpmyadmin’; // $cfg[‘Server’][$i][‘bookmarktable’] = ‘pma__bookmark’; // $cfg[‘Server’][$i][‘relation’] = ‘pma__relation’; // $cfg[‘Server’][$i][‘table_info’] = ‘pma__table_info’; // $cfg[‘Server’][$i][‘table_coords’] = ‘pma__table_coords’; // $cfg[‘Server’][$i][‘pdf_pages’] = ‘pma__pdf_pages’; // $cfg[‘Server’][$i][‘column_info’] = ‘pma__column_info’; // $cfg[‘Server’][$i][‘history’] = ‘pma__history’; // $cfg[‘Server’][$i][‘table_uiprefs’] = ‘pma__table_uiprefs’; // $cfg[‘Server’][$i][‘tracking’] = ‘pma__tracking’; // $cfg[‘Server’][$i][‘userconfig’] = ‘pma__userconfig’; // $cfg[‘Server’][$i][‘recent’] = ‘pma__recent’; // $cfg[‘Server’][$i][‘favorite’] = ‘pma__favorite’; // $cfg[‘Server’][$i][‘users’] = ‘pma__users’; // $cfg[‘Server’][$i][‘usergroups’] = ‘pma__usergroups’; // $cfg[‘Server’][$i][‘navigationhiding’] = ‘pma__navigationhiding’; // $cfg[‘Server’][$i][‘savedsearches’] = ‘pma__savedsearches’; // $cfg[‘Server’][$i][‘central_columns’] = ‘pma__central_columns’; // $cfg[‘Server’][$i][‘designer_settings’] = ‘pma__designer_settings’; // $cfg[‘Server’][$i][‘export_templates’] = ‘pma__export_templates’; /** * Ende der Serverkonfiguration */ /** * Verzeichnisse zum Speichern/Laden von Dateien vom Server */ $cfg [ ‘UploadDir’ ] = ” ; $cfg [ ‘SaveDir’ ] = ” ; /** * Ob Symbole oder Text oder sowohl Symbole als auch Text in der Tabellenzeile angezeigt werden sollen * Aktionssegment

Der Wert kann entweder „Symbole“, „Text“ oder „beide“ sein

* default = ‘both’ */ //$cfg[‘RowActionType’] = ‘icons’; /** * Definiert, ob einem Benutzer im Browse-Modus eine Schaltfläche “alle (Datensätze) anzeigen” * angezeigt werden soll oder nicht

* default = false */ //$cfg[‘ShowAll’] = true; /** * Anzahl der Zeilen, die beim Durchsuchen einer Ergebnismenge angezeigt werden

Wenn die Ergebnismenge * mehr Zeilen enthält, “Previous” und “Next”

* Mögliche Werte: 25, 50, 100, 250, 500 * default = 25 */ //$cfg[‘MaxRows’] = 50; /** * Bearbeitung von Binärfeldern verbieten * Gültige Werte sind: * false Bearbeitung zulassen * ‘blob’ Bearbeitung zulassen, außer für BLOB-Felder * ‘noblob’ Bearbeitung verbieten, außer für BLOB-Felder * ‘all’ Bearbeitung verbieten * default = ‘ blob’ */ //$cfg[‘ProtectBinary’] = false; /** * Zu verwendende Standardsprache, wenn nicht browserdefiniert oder benutzerdefiniert * (Sie finden alle Sprachen im Locale-Ordner) * Entkommentieren Sie die gewünschte Zeile: * default = ‘en’ */ //$cfg[ ‘DefaultLang ‘] = ‘en’; //$cfg[‘DefaultLang’] = ‘de’; /** * Wie viele Spalten sollen für die Tabellendarstellung einer Datenbank verwendet werden? * (ein Wert größer als 1 führt dazu, dass einige Informationen ausgeblendet werden) * default = 1 */ //$cfg[‘PropertiesNumColumns’] = 2; /** * Auf „true“ setzen, wenn Sie einen DB-basierten Abfrageverlauf wünschen

Wenn „false“, verwendet dies * JS-Routinen, um den Abfrageverlauf anzuzeigen (verloren beim Schließen des Fensters) * * Dies erfordert aktivierten Konfigurationsspeicher, siehe oben

* default = false */ //$cfg[‘QueryHistoryDB’] = true; /** * Wie viele Einträge sollten bei Verwendung des DB-basierten Abfrageverlaufs beibehalten werden? * default = 25 */ //$cfg[‘QueryHistoryMax’] = 100; /** * Ob der Benutzer abgefragt werden soll, bevor der Fehlerbericht an * das phpMyAdmin-Team gesendet wird, wenn ein JavaScript-Fehler auftritt * * Verfügbare Optionen * (‘ask’ | ‘always’ | ‘nie’) * default = ‘ask’ */ //$cfg[‘SendErrorReports’] = ‘immer’; /** * ‘URLQueryEncryption’ definiert, ob phpMyAdmin sensible Daten aus der URL-Abfragezeichenfolge verschlüsselt

* „URLQueryEncryptionSecretKey“ ist ein 32 Bytes langer geheimer Schlüssel, der zum Verschlüsseln/Entschlüsseln der URL-Abfragezeichenfolge verwendet wird

*/ //$cfg[‘URLQueryEncryption ‘] = true; //$cfg[‘URLQueryEncryptionSecretKey’] = ”; /** * Weitere Konfigurationsoptionen finden Sie in der Dokumentation * im Ordner doc/ oder unter

*/

✔ Solved run npm ng in Win10 PowerShell Unable to load the npm-ng.ps file is not digitally signed Update

Video unten ansehen

Weitere hilfreiche Informationen im Thema anzeigen da die ausführung von skripts auf diesem system deaktiviert ist

ng : Unable to load the npm-ng.ps file. The file
\”C:\”Users\”Raimund-AppData-Roaming-npm-ng.ps1\” is not digitally signed. You can use this script in the current system
do not execute. For more information about running scripts and setting the execution policy, see
under \”about_Execution_Policies
https://codedocu.com/Software/Angular/Angular-Error/Error-message_colon_-The-file-cannot-be-loaded_dot_-The-file-is–not-digitally-signed-npm-ng_dot_ps1?2568
ng : Die Datei npm\
g.ps kann nicht geladen werden. Die Datei
\”C:\\Users\\Raimund\\AppData\\Roaming\
pm\
g.ps1\” ist nicht digital signiert. Sie können dieses Skript im aktuellen System
nicht ausführen. Weitere Informationen zum Ausführen von Skripts und Festlegen der Ausführungsrichtlinie erhalten Sie
unter \”about_Execution_Policies

da die ausführung von skripts auf diesem system deaktiviert ist Einige Bilder im Thema

 New ✔ Solved run npm ng in Win10 PowerShell Unable to load the npm-ng.ps file is not digitally signed
✔ Solved run npm ng in Win10 PowerShell Unable to load the npm-ng.ps file is not digitally signed New Update

Perl (Programmiersprache) – Wikipedia Update New

Perl [pɝːl] ist eine freie, plattformunabhängige und interpretierte Programmiersprache, die mehrere Paradigmen unterstützt.. Der Linguist Larry Wall entwarf sie 1987 als Synthese aus C, awk, den Unix-Befehlen und anderen Einflüssen.Ursprünglich als Werkzeug zur Verarbeitung und Manipulation von Textdateien insbesondere bei der System– und Netzwerkadministration …

+ mehr hier sehen

Read more

PERL ist eine Weiterleitung zu diesem Artikel

Für andere Bedeutungen siehe ist ein Link zu diesem Artikel

Für andere Bedeutungen siehe Perl

Perl [pɝːl] ist eine freie, plattformunabhängige und interpretierte Programmiersprache, die mehrere Paradigmen unterstützt

Der Linguist Larry Wall entwarf es 1987 als Synthese aus C, awk, den Unix-Befehlen und anderen Einflüssen

Ursprünglich als Werkzeug zum Verarbeiten und Manipulieren von Textdateien gedacht, insbesondere in der System- und Netzwerkadministration (z

B

zum Auswerten von Logdateien), hat Perl auch in der Entwicklung von Webanwendungen und in der Bioinformatik weite Verbreitung gefunden

Auch in der Finanzwelt ist Perl traditionell vertreten, vor allem bei der Verarbeitung von Datenströmen aus diversen Nachrichtenquellen

Die Hauptziele sind schnelle Problemlösung und größtmögliche Freiheit für Programmierer

Die Verarbeitung von Texten mit Hilfe von regulären Ausdrücken und viel Gestaltungsspielraum sind Stärken der Sprache

Larry Wall war als Administrator und Programmierer bei Unisys angestellt, wo er seit März 1987 daran beteiligt war, unter dem Namen Blacker ein sicheres Netzwerk für die NSA zu entwickeln

Er erhielt mehrere Aufträge zur Erstellung von Tools zur Überwachung und Fernwartung der entstehenden Software

Eine Hauptaufgabe bestand darin, aus verstreuten Logdateien übersichtliche Reports zu generieren

Da ihm die vorhandenen Sprachen und Tools zu umständlich erschienen, entwickelte er mit Hilfe seines damaligen Teamkollegen Daniel Faigin und seines Schwagers Mark Biggar nach und nach eine eigene Sprache, um seine Aufgaben zu lösen

Dabei griff er auch auf sein Wissen und seine Erfahrung als Linguist zurück und gestaltete Perl nahe an menschlichen Sprachgewohnheiten

Dies äußert sich in minimalen Anforderungen für Anfänger, einer starken Kombinierbarkeit der Sprachelemente und einem reichen Wortschatz, der auch bedeutungsübergreifende Befehle zulässt

Wall sieht darin die Erfüllung des Bedürfnisses eines Praktikers nach Freiheit und intuitivem Ausdruck

Gemäß diesem praktischen Ansatz entlehnte Perl sein Vokabular und seine logischen Strukturen den Sprachen und Werkzeugen, die in den 1980er Jahren unter Unix beliebt waren, was das Lernen erleichterte, aber auch Unix -Philosophie umgekehrt

Unix und seine Systemkommandos wurden kompiliert und größtenteils in C geschrieben

Diese Kommandos waren logische Einheiten und sollten genau eine Aufgabe erfüllen: „Do one thing and do it well“

Interpretierte Shell-Skripte schnell und einfach kombinierte Befehle, die ihre Ergebnisse miteinander leiten konnten

Perl verstößt gegen diese Philosophie, indem es diese Befehle zu einem Teil der Programmiersprache macht, dh C und Shell vereinheitlicht und die vorhandenen Befehle und Werkzeuge außer Kraft setzt

Dies wurde notwendig, weil Shell-Skripte für komplexe Aufgaben ungeeignet waren

Ihr Verfahren ist sehr einfach, sie können nur bedingt Daten speichern und die Pipes sind Flaschenhälse beim Datenaustausch

Andererseits ermöglichen sie einen viel kompakteren Programmierstil, da die Verwendung eines UNIX-Tools viele Zeilen C-Code ersetzen kann

Um beide Programmierstile zu nutzen, hat Wall eine Kombination aus C und Tools wie sed, awk, grep und sort entwickelt

Er fügte Merkmale der Bourne-Shell hinzu, in geringerem Maße Elemente von Pascal und BASIC sowie seine eigenen Ideen.[6] Diese Verschmelzung ermöglichte kurze, leistungsfähige Programme, die schnell geschrieben und jederzeit getestet werden konnten, ohne sie kompilieren zu müssen, was auch die Entwicklung beschleunigte

Später wurden zusätzliche Fähigkeiten aus Sprachen wie Lisp, Smalltalk, Python oder Ruby „importiert“.

Der Name Perl bezieht sich auf ein Zitat aus dem Matthäusevangelium (Mt 13,46 EU ),[7] in dem Jesus das Himmelreich mit dem Bild eines Kaufmanns beschreibt, der alles, was er besitzt, verkaufen will, um eine Perle zu erwerben von großem Wert

Noch vor der Veröffentlichung wurde der Name von „Pearl“ auf „Perl“ geändert, da es bereits eine Programmiersprache namens PEARL gab

Ebenfalls weit verbreitet und von Larry Wall akzeptiert sind die Backronyme Practical Extraction and Report Language und Pathologically Eclectic Rubbish Lister

Die Schreibweise „Perl“ bezeichnet die Sprache, während „perl“ das Programm bezeichnet, das diese Sprache interpretiert

Darüber hinaus legt die Perl-Community großen Wert darauf, die Schreibweise “PERL” nicht zu verwenden, da es sich nicht um ein Akronym handelt.[8]

Perl 1 bis 4 [Bearbeiten| Quelle bearbeiten ]

Am 18

Dezember 1987[9] veröffentlichte Larry Wall sein Programm im Usenet als Perl 1.0, das damals eine leistungsfähigere Shell war, die gut mit Text und Dateien umgehen, andere Programme steuern und leicht lesbare Berichte ausgeben konnte

Bereits am 5

Juni des Folgejahres wurde die Version 2.0 mit einer komplett erneuerten und erweiterten Regex-Engine und einigen weiteren Verbesserungen veröffentlicht

Perl 3 folgte am 18

Oktober 1989, das binäre Daten verarbeiten konnte und auch Netzwerkprogrammierung ermöglichte

Als neue Lizenz wurde die GPL gewählt

Es war seit dem 21

März 1991 fast unverändert als Perl 4 verfügbar, jetzt aber entweder unter der GPL oder der von Larry Wall entwickelten Artistic License

Der eigentliche Grund für die neue Version war aber das zeitgleich erschienene Camelbook, das als Referenz für den aktuellen Stand mit der Bezeichnung Version 4 veröffentlicht wurde

Bis dahin waren die seit Perl 1 verfügbaren UNIX-Manpages die nur Dokumentation vorhanden

Diese bieten zu jedem Thema eine fundierte und umfassende Abhandlung, aber keinen einfachen Einstieg für Perl-Anfänger

Das Buch von Randal L

Schwartz, Larry Wall und Tom Christiansen sollte diese Lücke schließen

Herausgegeben wurde es vom O’Reilly Verlag, der mit diesem und weiteren Titeln als renommierter Fachverlag für Programmierer bekannt wurde

O’Reillys Perl-Bücher wurden zu den maßgeblichen Veröffentlichungen, was erst im neuen Jahrtausend etwas relativiert wurde

Außerdem führte der Verlag unter der Internetadresse perl.com das meistbesuchte Online-Magazin für Perl-Programmierung und organisierte die größte Perl-Konferenz TPC (The Perl Conference – heute OSCON)

O’Reilly profitierte von der wachsenden Popularität von Perl, und im Gegenzug zahlte Tim O’Reilly seinem Freund Larry Wall in den folgenden Jahren ein festes Gehalt, der sich ohne weitere Verpflichtungen oder Vorgaben der Weiterentwicklung der Sprache widmen konnte

1993, als Perl Version 4.036 erreichte, gab Larry Wall die Entwicklung auf und gestaltete Perl 5 komplett neu

Perl 5 [ edit | Quelle bearbeiten ]

Perl 5.0 wurde am 18

Oktober 1994 veröffentlicht und war bis zu diesem Zeitpunkt der größte Fortschritt für die Sprache

Mit Plain Old Documentation konnte man nun formatierte Dokumentation in den Quellcode einfügen

Von nun an konnte die Sprache auch um eigene Module erweitert werden, was im Folgejahr zur Entstehung von CPAN führte

Schließlich wurde dieses große Archiv frei verfügbarer Module zu einem wichtigen Grund, Perl eigenständig zu verwenden

Eine weitere wichtige Neuerung war die Einführung von Referenzen, die erstmals eine einfache Erstellung zusammengesetzter Datenstrukturen ermöglichten.

Mit Version 5 wurde es auch möglich, in Perl objektorientiert zu programmieren

Larry Wall ging einen ungewöhnlichen Weg und leitete die verwendete Syntax fast ausschließlich aus bestehenden Sprachelementen (Pakete, Paketfunktionen und Paketvariablen sowie die neuen Referenzen) ab

Lediglich die Funktion bless() zum Erstellen eines Objekts und der Pfeiloperator ( -> ) zum Aufrufen von Methoden wurden hinzugefügt (der Pfeiloperator ist eigentlich der Dereferenzierungsoperator, der aus einem Objekt besteht, das aus einer Referenz auf die Klasse, eine bestimmte Methode, besteht dereferenziert)

Außerdem wurde XS geschaffen, eine Schnittstellenbeschreibungssprache, die es ermöglicht, Perl-Programme um andere Sprachen zu erweitern oder beliebige Software oder Hardware mit Perl-Programmen anzusprechen

Larry Wall hat sich seit der Veröffentlichung von Perl 5 kaum an der Entwicklung der Sprache beteiligt

Dies geschah aber ehrenamtlich durch Perl-begeisterte Programmierer, die sogenannten Perl-5-Porter, die über die im Mai 1994 gegründete p5p-Mailingliste kommunizieren entscheiden auch zunehmend über Bugfixes und neue Funktionen der Sprache über einen eigenen Bug- und Request-Tracker (RT)

Für jede Version übernimmt ein sogenannter Pumpking die Verwaltung

Der Begriff Perl Porter stammt von der ursprünglichen Aufgabe der p5p-Liste, die Portierung von Perl auf andere Betriebssysteme zu koordinieren

In den Jahren nach Version 5.0 wurde Perl nicht nur auf Macintosh und Windows portiert, sondern auch die Nummerierung der Versionen verschoben

Da sich die Syntax nicht wesentlich geändert hat, wurde die 5 belassen und die erste Dezimalstelle für größere Meilensteine ​​erhöht, aber zusätzliche Zahlen verwendet, um die Zwischenschritte zu zählen

Da Perl ab 5.6 nur mit Versionsnummern umgehen konnte, die mehrere Kommas enthielten, waren das z.B

B

Perl 5.001 oder Perl 5.001012 geschrieben

Ab 5.6 wurde auch das damals von Linux verwendete Versionsschema übernommen, bei dem gerade Zahlen fehlerfrei gepflegte Anwenderversionen und ungerade Zahlen Entwicklerversionen bezeichnen, in die neue Funktionen eingebaut sind

Reihen von Benutzerversionen (z

B

5.8.x) werden binärkompatibel zueinander gehalten, was bedeutet, dass ein für Perl 5.8.7 kompiliertes Binärmodul auch mit 5.8.8 funktioniert, aber nicht unbedingt mit 5.10 oder 5.6.1

Perl5.6

Diese Veröffentlichung am 22

März 2000 brachte einige neue experimentelle Funktionen, die später ausgereift wurden, wie Unicode und UTF-8, Threads und Klonen

Nun könnten auch 64-Bit-Prozessoren zum Einsatz kommen

Linguistisch führte diese von Gurusamy Sarathy geleitete Reihe hauptsächlich lexikalische globale Variablen (mit unserem ) und eine Vektornotation ein, die den Vergleich mehrstelliger Versionsnummern erlaubt, sowie die speziellen Variablen @- und @+ ,

Perl 5.8

Mit der von Nicholas Clark am 18.07.2002 gewarteten 5.8.x-Serie wurden die Probleme mit Unicode und insbesondere den Threads behoben, aber auch Input/Output (IO), Signale und Zahlengenauigkeit entscheidend verbessert

Ab Perl 5.10 [Bearbeiten | Quelle bearbeiten ]

Neben reduziertem Speicherverbrauch und einer erneuerten und nun austauschbaren Regex-Engine brachte diese Version am 18

Dezember 2007 unter der Leitung von Rafaël Garcia-Suarez vor allem Neuerungen, die aus dem Design von Perl 6 und deren Verwendung entweder einzeln oder kollektiv stammen mit Funktion ‘:5.10’ verwenden; muss registriert sein oder kürzer v5.10 verwenden;

Dies gilt ab dieser Version für alle Funktionen, die die Kompatibilität beeinträchtigen könnten

Dazu gehören say , given und when (ähnlich der switch-Anweisung in C), der Smartmatch-Operator ( ~~ ), der defined or -Operator ( // ) und Zustandsvariablen, die das Erstellen von Closures vereinfachen

Weitere bemerkenswerte neue Funktionen sind der verschiebbare Installationspfad, stapelbare Dateitestoperatoren, definierbare lexikalische Pragmas, optionale C3-Serialisierung der Objektvererbung und Feld-Hashes (für „inside out“-Objekte)

Die Regex-Engine arbeitet jetzt iterativ statt rekursiv und ermöglicht rekursive Ausdrücke

Auch komplexe Suchanfragen lassen sich mit Named Captures nun verständlicher und weniger fehleranfällig formulieren

Die Sondervariablen $# und $* sowie die Perlcc- und JPL-Interpreterschnittstellen wurden entfernt

Im folgenden Jahr wurde der Quellcode von Perforce auf Git umgestellt, was die Entwicklung und Veröffentlichung neuer Versionen erheblich vereinfachte

Perl 5.12

Diese Version vom 12

April 2010, herausgegeben von Jesse Vincent, enthält weit weniger größere und sichtbare Änderungen als 5.10

v5.12 verwenden; impliziert die strikte Verwendung; und verwenden Sie die Funktion ‘unicode_strings’; , wodurch alle Befehle Zeichenfolgen als Unicode behandeln

Zu den technischen Verbesserungen gehören aktualisiertes Unicode (5.2), DTrace-Unterstützung und Sicherheit für Daten nach 2038, suidperl wurde entfernt

Der Ellipsen-Operator (yada-yada) und die Regex-Escape-Sequenz \N wurden von Perl 6 übernommen, Modulversionen können jetzt nach Paket und Verwendung verwaltet werden

Ebenfalls neu ist die Möglichkeit, über Perl-Routinen eigene Schlüsselwörter zu definieren

Dies ist jedoch als experimentell gekennzeichnet und kann sich ändern

Ab dem 5

Dezember 2000 erscheint jeweils am 20

eines Monats eine Entwicklerversion, alle 3 Monate eine kleine Benutzerversion und jedes Jahr eine große zur besseren Planung und Zusammenarbeit mit Distributionen

Perl5.14

Ab dem 14

Mai 2011 erleichtern neue Modifikatoren und Steuerzeichen die Arbeit mit Unicode, das auf Version 6.0 aktualisiert wurde

Eingebaute Listen und Hashes dereferenzieren automatisch (Autoderef) und ein Großteil der Dokumentation wurde überarbeitet oder neu geschrieben

Auch die IPv6-Unterstützung wurde verbessert und das Linken zu Multithread-Bibliotheken vereinfacht

Perl5.16

Die am 20

Mai 2012 veröffentlichte Version enthält zahlreiche syntaktische Glättung, teilweise erneuerte Dokumentation und die Umstellung auf Unicode 6.1

Jesse Vincent war verantwortlich und Ricardo Signes ab November 2011

Eine neu eröffnete Spendenaktion der Perl Foundation hat auch zwei langjährige Entwickler verpflichtet, undankbare Aufgaben zu erledigen und den Build-Prozess zu vereinfachen

Die einzige grundlegend neue Funktionalität ist mit use feature ‘current_sub’; oder verwenden Sie v5.16; umschaltbare Tokens __SUB__ , ein Verweis auf die aktuelle Routine

Perl5.18

Die am 18

Mai 2013 veröffentlichten Funktionalitäten lexikalische Subroutinen (lexical_subs) und Zeichenklassen, die mit Mengenfunktionen innerhalb regulärer Ausdrücke generiert werden, sind beide experimentell

Solche Funktionen, die lexikalische Kontextvariablen (lexical_topic) und den Smartmatch-Operator enthalten, erzeugen jetzt Warnungen, die mit keinen Warnungen beginnen ‘experimental::functionname’; oder keine Warnungen „experimentell“; kann abgeschaltet werden

Die Hashes wurden konsequent randomisiert, um Programme besser vor DoS-Angriffen zu schützen

Perl 5.20

Ebenfalls unter der Leitung von Ricardo Signes kamen am 27

Mai 2014 die experimentellen Funktionalitäten von Subroutinen-Signaturen (signatures) und (postderef) einer alternativen Postfix-Syntax zur Dereferenzierung hinzu

Das in 5.14 enthaltene autoderef wurde auf experimentell herabgestuft

Unicode 6.3 wird unterstützt und mit drand48 hat Perl nun einen eigenen guten plattformunabhängigen Zufallszahlengenerator

String- und Array-Größen sind jetzt 64-Bit-Werte

Perl5.22

Der 1

Juni 2015 brachte den Double Diamond-Operator (<<>>), bitweise String-Operatoren (&

|

^

~.), einen ‘strengen’ regulären Ausdrucksmodus use re ‘strict’; (re_strict), Unicode 7.0, Aliasing von Referenzen (refaliasing) und konstante Routinen (const_attr), die immer den bei der ersten Kompilierung ermittelten konstanten Wert zurückgeben

Alle genannten Features (Name in Klammern) sind vorerst experimentell

Perl5.24

brachte Beschleunigungen für Blöcke und numerische Operationen am 9

Mai 2016 sowie Unicode 8.0

Funktionen postderef und postderef_qq wurden übernommen – autoderef und lexical_topic entfernt

Perl5.26

Unter der Leitung von SawyerX wurden am 30

Mai 2017 die xx-Regex-Option, einrückbare Heredocs und Unicode 9.0 eingeführt

Das Feature lexical_subs wurde akzeptiert und ‘.’ (das aktuelle Verzeichnis) wurde aus Sicherheitsgründen standardmäßig aus @INC (der Liste der Suchpfade für Module) entfernt

Perl5.28

Veröffentlicht am 22

Juni 2018

Zusätzlich zu Unicode 10.0 erhielt Perl Alpha-Assertionen in langen und kurzen Versionen

Das sind Aliase für spezielle Regex-Gruppen mit sprechenden Namen: zB statt (?=…) jetzt auch (*positive_lookahead:…) oder (*pla:…)

(*script_run:. ..) bzw

(*sr:. ..) wurde eingeführt, um einheitlich codierten Text zu erkennen und so Angriffe durch manipulierte Eingaben zu vermeiden

Drei kritische Schwachstellen wurden behoben, mehrfaches Dereferenzieren und Zusammenführen von Strings wurde beschleunigt, und die Operatoren (&

|

^

~.) sind nicht mehr experimentell

Es wurde auch entschieden, im perldeprecation-Dokument festzuhalten, wann welches Feature entfernt wird (mit 2-Versions-Warnung)

Perl5.30

Aktualisiert am 22

Mai 2019 auf Unicode 12.1, eingeführte Unicode-Wildcard-Eigenschaften und erlaubt, ein Lookbehind in der Länge zu begrenzen

$[, $*, $# und File::Glob::glob sowie Variablendeklarationen in nachgestellten Bedingungsausdrücken entfernt

Perl 5.32

Am 20

Juni 2020 wurden verkettete Vergleichsoperatoren ($d < $e <= $f), der isa-Operator (überprüft die Klassenzugehörigkeit) und Unicode 13 eingeführt

\p{name=…} ermöglicht die Interpolation von Ausdrücken Unicode-Namen innerhalb einer Regex

Perl 5.34

Am 20

Mai 2021 wurde die Ausnahmebehandlung a la Try::Tiny in den Kern und die alternative Notation für die oktale Darstellung von Literalen „0oddddd“ integriert

Die neue Dokumentationsseite ‘perlgov’ buchstabiert den einen neuen Prozess, nach dem sich die Perl-Community in Zukunft regieren wird, ohne den Einfluss von Larry Wall

Aktuelle Versionen [ Bearbeiten | Quelle bearbeiten ]

Obwohl die neueste Benutzerversion 5.34.0 ist, wird die 5.32.x-Versionsreihe derzeit beibehalten (aktuell ist 5.32.1)

Die Versionen sind 5.30.3, 5.28.3, 5.26.3, 5.24.4, 5.22.4, 5.20.3, 5.18.2, 5.16.3, 5.14.4, 5.12.5, 5.10.1 und 5.8.9 Die auslaufenden, sicherheitsrelevanten Verbesserungen werden bis zu 3 Jahre nach Erscheinen einer Version nachgereicht

Bei Kernmodulen wird meist auf Kompatibilität bis 5.6 geachtet, bei wichtigen CPAN-Modulen meist 5.8.3

See also  The Best asc to pdf online New Update

Änderungen finden im ungeradzahligen Entwicklungszweig (derzeit 5.35.x) statt, der nicht für die allgemeine Nutzung vorgesehen ist

Da sich Perl 6 zu einer eigenen Sprache entwickelt hat, wird die nächste Major-Version Perl 7 heißen

Sie wird derzeit als vorsichtige und möglichst kompatible Modernisierung mit zeitgemäßen Standardeinstellungen geplant.

Perl 6, 2020 in Raku umbenannt, ist eine Schwestersprache, deren Interpreter und umgebende Infrastruktur komplett neu gestaltet wurden

Perl wurde für den praktischen Gebrauch entwickelt und konzentriert sich daher auf schnelle und einfache Programmierbarkeit, Vollständigkeit und Anpassbarkeit

Diese Philosophie wird in den folgenden Schlagworten oder Sätzen ausgedrückt, die größtenteils von Larry Wall entlehnt sind

Mehrere Pfade [Bearbeiten | Quelle bearbeiten ]

Das bekannteste und grundlegendste Perl-Motto lautet „There is more than one way to do it“, was meist mit TIMTOWTDI (selten TMTOWTDI) oder (mit englischer Kontraktion) „Tim To[a]dy“ abgekürzt wird.[10 ] Im Gegensatz zu Sprachen wie Python macht Perl weniger Vorgaben und bietet bewusst mehrere Formulierungs- und Lösungsmöglichkeiten für jedes Problem (syntaktischer Zucker)

Beispielsweise kann man logische Operatoren als || schreiben und schreiben Sie && (wie in C) oder (mit Bedeutungsnuancen) als oder und und (wie in Pascal); aber auch zahlreiche Befehle mit sich überschneidendem Funktionsumfang wie map und for erlauben unterschiedliche Formulierungen für den gleichen Sachverhalt

Einige Befehle, wie z

B

der Rautenoperator ( <> ), bieten eine Kurzschreibweise für bereits vorhandene Funktionen (hier wäre mit geringfügigen Unterschieden äquivalent, aber viel länger zu schreiben)

Diese Vielfalt zeigt sich auch im CPAN, wo oft mehrere Module einen sehr ähnlichen Zweck erfüllen oder auch (wenn auch umständlicher) ad hoc implementiert werden könnten (Beispiel Getopt::Long [11])

Ein weiteres Schlagwort, das man auch als Erweiterung von TIMTOWTDI sehen kann, beschreibt Perl als erste postmoderne Programmiersprache

Gemeint ist, dass Perl verschiedene Paradigmen vereint und es dem Benutzer freisteht, strukturierte, objektorientierte, funktionale und imperative Sprachmerkmale zu kombinieren

Einfach und möglich [ bearbeiten | Quelle bearbeiten ]

Der andere Schlüsselsatz lautet: Perl macht einfache Aufgaben einfach und schwierige Aufgaben möglich

Dazu gehört einerseits das Ziel, häufige Aufgaben mit kurzen „fertigen Lösungen“ so weit wie möglich zu vereinfachen

Zum Beispiel prüft -e Dateiname, ob eine Datei existiert

Einfache Aufgaben einfach zu halten bedeutet für Perl aber auch, keine vorbereitenden Programmieranweisungen wie das Registrieren von Variablen oder das Schreiben einer Klasse zu benötigen

Zweitens versucht Perl, vollständig zu sein und für jedes Problem zumindest die Grundlagen bereitzustellen, die eine Lösung möglich machen

Das dritte Ziel, die ersten beiden Ziele nicht kollidieren zu lassen, wird mit dem wachsenden Sprachumfang von Perl 6 immer wichtiger, wobei in Anlehnung an den Huffman-Code die Notation der am häufigsten verwendeten Befehle so kurz wie möglich gehalten wird ohne Kompromittierung der Logik, die die Schreibweise ähnlicher Befehle bricht

Perl verfügt über Befehle, die je nach Kontext, in dem sie verwendet werden, unterschiedliche Bedeutungen haben

Solche kontextsensitiven sind Datenstrukturen wie das Array

Bei Zuweisung an ein anderes Array wird dessen Inhalt übergeben; wenn der Empfänger ein Einzelwert (Skalar) ist, erhält er die Länge des Arrays

Technische Eigenschaften [ bearbeiten | Quelle bearbeiten ]

Der Perl-Interpreter selbst ist ein in C geschriebenes Programm, das auf fast jedem Betriebssystem kompiliert werden kann

Allerdings sind vorkompilierte Versionen auf selten genutzten Systemen wie BeOS oder OS/2 nicht immer aktuell

Der Quellcode ist rund 50 MB groß und enthält auch Perl-Skripte, die die Funktion von Makefiles und der Testsuite übernehmen

Typischerweise ist das kompilierte Programm etwa 850 KB groß, dies kann jedoch je nach Betriebssystem, Compiler und verwendeten Bibliotheken variieren.

Perl-Skripte werden in beliebigen, durch Zeilen getrennten Textdateien gespeichert

Wenn ein Skript gestartet wird, liest es der Perl-Interpreter, wandelt es in einen Parse-Baum um, dieser in Bytecode, der dann ausgeführt wird

Der in den Interpreter eingebaute Parser ist eine angepasste Version von GNU Bison

Perl ist also streng genommen keine interpretierte Sprache, da vor jeder Ausführung ein Perl-Programm kompiliert wird

Das bedeutet zum Beispiel, dass – im Gegensatz zu rein interpretierten Sprachen – ein Programm mit Syntaxfehlern oder fehlenden Abhängigkeiten nicht startet

Perl war ursprünglich ein UNIX-Tool, das auf die Verarbeitung von Textdateien, die Steuerung anderer Programme und die Ausgabe von Berichten spezialisiert war

Es wird noch heute, nicht nur von Systemadministratoren, auf allen gängigen Betriebssystemen eingesetzt

Perl hat sich auch den Ruf einer Glue-Sprache (“Glue Language”) erworben, weil mit Hilfe von relativ schnell geschriebenen Perl-Skripten inkompatible Software angebunden werden kann

Bis heute gehört Perl auf allen POSIX-kompatiblen und Unix-ähnlichen Systemen zur Grundausstattung

Mit der Verbreitung des World Wide Web wurde Perl zunehmend verwendet, um Webserver, Datenbanken und andere Programme und Daten anzubinden und die Ergebnisse in Form von HTML-Seiten auszugeben

Der Perl-Interpreter wird vom Webserver per CGI oder FastCGI angesprochen bzw

ist direkt in den Server eingebettet

(mod perl in Apache, ActiveState PerlEx in Microsoft IIS)

Obwohl PHP für dieses serverseitige Skripting immer beliebter geworden ist, wird Perl immer noch von vielen großen und kleinen Websites und Webdiensten wie Amazon.com, IMDb.com, slashdot.org, Movable Type, LiveJournal und Xing verwendet

Da Perl-Skripte an vielen wichtigen Stellen oft kaum noch zu erkennen sind, wird Perl auch scherzhaft als das Klebeband bezeichnet, das das Internet zusammenhält

Auch Frameworks wie Mason, Catalyst, Jifty, Mojolicious und Dancer wurden in Perl erstellt, mit denen sehr schnell komplexe und leicht änderbare Websites entwickelt werden können

Auch Wiki-Software ist oft in Perl geschrieben, z.B

B

Socialtext, der auf Mason, Kwiki, TWiki, Foswiki, ProWiki oder UseMod basiert

Auch weit verbreitete Ticketsysteme mit Webinterface wie Bugzilla oder RT sind in Perl geschrieben

Webanwendungen sind jedoch immer noch nur eines der vielen Anwendungsgebiete von Perl

Wichtige Perl-Programme für E-Mail sind SpamAssassin (Spamfilter), PopFile und Open Webmail

Beispielsweise wird Perl für die Systemverwaltung in debconf verwendet, einem Teil des Paketverwaltungssystems des Debian-Betriebssystems

Weitere Hauptanwendungsgebiete sind Data Munging und Bioinformatik, wo Perl seit etwa 1995 die am weitesten verbreitete Sprache ist und immer noch wichtig ist

Gründe dafür sind wiederum die Fähigkeit, Informationen in Textform zu verarbeiten sowie die Flexibilität und Offenheit der Sprache, die es der internationalen Forschungsgemeinschaft trotz unterschiedlicher Standards der Institute ermöglichen, zusammenzuarbeiten

Hier ist BioPerl die wichtigste Sammlung frei verfügbarer Tools, die sich hauptsächlich auf den Bereich der Genomsequenzanalyse konzentriert

Perl spielte eine wichtige Rolle im Human Genome Project

Desktop-Anwendungen und Spiele wie Frozen Bubble können ebenfalls in Perl geschrieben werden

Heutige Computer sind schnell genug, um diese Programme reibungslos auszuführen

Bereiche, in denen Skriptsprachen wie Perl nicht sinnvoll eingesetzt werden können, sind Anwendungen mit hohen Anforderungen an Hardwarenähe oder Geschwindigkeit, wie etwa Treiber oder Codecs

Andererseits sollten sie nicht in sehr sicherheitskritischen Bereichen (z

B

Flugzeugsteuerung) eingesetzt werden, da aufgrund der laxen Syntaxprüfung (z

B

fehlendes/sehr schwaches Typsystem) viele Fehler erst zur Laufzeit und Verifikation auftreten grundsätzlich nicht möglich.

Perl-Portierungen existierten für über 100 Betriebssysteme.[12]

Perl und andere Programmiersprachen [Bearbeiten| Quelle bearbeiten ]

Für Aufgaben, die mit Perl nur schwer oder langsam zu lösen sind, bietet Perl mit dem Modul Inline[13] eine Schnittstelle an, über die sich Programmteile in anderen Sprachen in ein Perl-Programm integrieren lassen

Zu den unterstützten Sprachen gehören C, C++, Assembler, Java, Python, Ruby, Fortran und Octave.[14]

Anwendungsgebiete sind z.B

B.:

rechenintensive Formeln (C, Assembler),

Lösung komplexer Probleme mit bestehenden Systemen (Octave, Fortran-Bibliotheken) und

Zusammenführen von Anwendungen in verschiedenen Sprachen (“Perls Glue-Funktion”)

Die Verwendung von Inline ist relativ einfach und gut dokumentiert

Bei kompilierten Programmteilen protokolliert Inline den Versionsstand über eine MD5-Kennung, wodurch ein mehrfaches Kompilieren des gleichen Codes vermieden wird

Bei Inline erfordert das Übergeben der Parameter und das Zurückgeben der Ergebnisse etwas Aufwand

Bei kurzen Berechnungen überwiegt dieser Aufwand den Geschwindigkeitsgewinn

Wird beispielsweise das Mandelbrot-Set mit der Formel z ↦ c + z 2 {\displaystyle z\mapsto c+z^{2}} per Inline als C-Funktion berechnet, aber die Iteration in Perl belassen, erfolgt die Programmausführung gegenüber einer reinen Perl-Implementierung

Wird dagegen auch die Iterationsschleife nach C ausgelagert, steigt die Performance deutlich

Tim O’Reilly war viele Jahre lang einer der wichtigsten Unterstützer von Perl

Sein Verleger hält die Rechte am vielleicht wichtigsten Perl-Logo: dem Kamel

Das Maskottchen von Perl ist ein Dromedar

Erstmals zierte es das Cover des Nachschlagewerks Programming Perl, auch Camel Book genannt

Sein Verleger (Tim O’Reilly) gab in einem Interview scherzhaft als Begründung an: Perl sei hässlich und komme über weite Strecken ohne Wasser aus

Das Dromedar ist auf dem Emblem der Programming Republic of Perl zu sehen, das oft als offizielles Perl-Logo angesehen wird, und O’Reilly erlaubt seine nicht-kommerzielle Nutzung

Weitere im Zusammenhang mit Perl verwendete Logos sind neben Perlen die geschnittene Zwiebel (ein Symbol der Perl Foundation) und der Komodo-Drache, der ActiveStates weit verbreitete Perl-Distribution ActivePerl ziert

Freies Format [ Bearbeiten | Quelle bearbeiten ]

Perl erlaubt bedingt formatfreien Quellcode

Das bedeutet, dass Einrückungen und zusätzliche Leerzeichen syntaktisch irrelevant sind und auch Zeilenumbrüche beliebig eingefügt werden können

Dazu müssen Befehle in einem Block mit einem Semikolon getrennt werden

Einige Sprachelemente wie Formate, Heredocs und gewöhnliche reguläre Ausdrücke sind nicht formatfrei

Charakteristisch für Perl ist, dass Variablen durch ein Präfix (auch Sigil genannt) identifiziert werden, das ihren Datentyp angibt

Hier sind einige Beispiele:

$ für Skalare: $skalar

für Skalare: @ für Arrays: @array

für Arrays: % für Hashes (assoziative Arrays): %hash

für Hashes (assoziative Arrays): & für Funktionen (oft optional): &function

für Funktionen (oft optional): * für Typeglobs: *all

Dateihandles, Verzeichnishandles und Formate haben kein Präfix, sind aber auch separate Datentypen

Jeder Datentyp in Perl hat seinen eigenen Namensraum

Grundlegende Datentypen in Perl sind skalare Variablen, Arrays und Hashes (assoziative Arrays)

Skalare sind einwertige, typlose Variablen; Sie können Zeichenfolgen, Zahlen (Ganzzahl/Fließkommazahl) oder Verweise auf andere Daten oder Funktionen speichern

Strings und Zahlen werden bei Bedarf automatisch und transparent ineinander umgewandelt, ein wesentliches Feature von Perl

Arrays fassen mehrere Skalare unter einem Variablennamen zusammen

Array-Einträge haben einen Index

Die Zählung beginnt bei 0, wenn nichts anderes definiert ist.

Hashes kombinieren auch Skalare, jedoch werden hier einzelne Werte (Werte) nicht über numerische Indizes, sondern mit Hilfe von zugehörigen Schlüsseln (Keys) eindeutig identifiziert und adressiert

Jede Zeichenfolge kann als Schlüssel verwendet werden oder alles, was in eine Zeichenfolge konvertiert werden kann

Hashes und Arrays können einander zugeordnet werden, wobei Hashes als Listen von Schlüssel/Wert-Paaren betrachtet werden

Mittels Referenzen können Daten unterschiedlichen Typs zu neuen Datenstrukturen kombiniert werden, beispielsweise sind Hashes denkbar, die neben (Referenzen auf) Arrays auch einzelne Skalare enthalten

Paketvariablen werden automatisch erstellt, sobald sie zum ersten Mal verwendet werden

Variablen mit begrenzter Gültigkeit werden in der modernen Sprache viel häufiger verwendet

Diese müssen mit my deklariert werden

Unser stellt eine Variable im gesamten Programm zur Verfügung

undef-Variable macht die gegebene Variable undef

Die grundlegenden Kontrollstrukturen unterscheiden sich nicht sehr von denen in C, Java und JavaScript

Bedingte Ausführung [ bearbeiten | Quelle bearbeiten ]

funktioniert wie von C bekannt; es sei denn () , eine Besonderheit von Perl, ist eine Notation für if (!())

Eine case- oder switch-Anweisung (angegeben wenn) gibt es erst ab Perl 5.10, vorher musste diese Struktur mit if. .

elsif. .

else nachgebildet werden

Given setzt jedoch die Kontextvariable ( $_ ) wie for und when wendet smartmatch ( ~~ ) darauf an, wodurch dieses Konstrukt weitaus vielseitiger als herkömmliche case-Befehle wird

Der optionale Standard entspricht hier einem else

Die optimierten logischen Operatoren erlauben auch eine bedingte Ausführung

Mit or (or || ) wird der zweite Ausdruck ausgeführt, wenn das Ergebnis des ersten kein wahrer Wert ist, und (or && ) funktioniert analog

if ( ) { } [ elsif ( ) { }] [ else { }] es sei denn ( ) { } [ else { } ] gegeben ( ) { [ when ( ) { }] [ default { }] } ? : ; || ; && ;

Wie in C iterieren while und for (in der Variante im C-Stil) so lange, wie die Bedingung wahr ist, bis sie wahr ist, und foreach iteriert über eine Liste

In Perl 5 sind for und foreach austauschbar

[ Bezeichnung: ] While ( ) { } [ Weiter { }] [ Bezeichnung: ] Bis ( ) { } [ Weiter { }] [ Bezeichnung: ] for ([ ]; [ ]; [ ]) { } [ Continue { }] [ label: ] for [ each ] [[ my ] $element ] ( ) { } [fortfahren { }]

last verlässt die Schleife sofort, redo wiederholt die aktuelle Iteration und next springt zum Continue-Block, bevor es mit der nächsten Iteration fortfährt

Diesen Befehlen kann ein Label-Identifikator folgen, der im Fall von verschachtelten Strukturen bestimmt, auf welche Schleife sich der Befehl bezieht

do { } while ; # Sonderfall: In dieser Form do { } until ; # mindestens eine Ausführung

Nachfolgende Kontrollstrukturen [Bearbeiten | Quelle bearbeiten ]

Die oben aufgeführten Kontrollstrukturen beziehen sich auf einen Block mit mehreren Anweisungen

Bei einzelnen Anleitungen können Sie auch die abgekürzte, nachträgliche Schreibweise wählen, was auch (englischsprachigen) Lesern das Verständnis der natürlichsprachlichen Formulierung erleichtert

if ; es sei denn ; für ; while ; bis ;

Reguläre Ausdrücke [Bearbeiten | Quelle bearbeiten ]

Reguläre Ausdrücke (Regex) sind seit den Anfängen eine Besonderheit von Perl, da ähnliche Fähigkeiten bisher nur in spezialisierten Sprachen wie Snobol und awk verfügbar waren

Aufgrund seiner weiten Verbreitung setzte Perl einen inoffiziellen Standard, der von der Perl-unabhängigen und teilweise anderen Bibliothek PCRE aufgegriffen wurde, die heute von mehreren wichtigen Sprachen und Projekten verwendet wird

Ab Version 5.0 hat Perl seine Regex-Fähigkeiten, wie z

B

Rückverweise, um viele Funktionen erweitert

Reguläre Ausdrücke in Perl können auch viel direkter verwendet werden – als z.B

in Java – mit dem =~-Operator verwenden, da sie den Kern der Sprache darstellen und keine austauschbare Bibliothek sind

Der eigentliche reguläre Ausdruck wird mit Schrägstrichen als Trennzeichen geschrieben

Da Schrägstriche häufig in regulären Ausdrücken vorkommen, können auch viele andere Trennzeichen verwendet werden

Dies verbessert die Lesbarkeit, indem Sie Zeichen auswählen können, die sich vom Hauptteil des regulären Ausdrucks abheben

Perl verfügt über zwei Befehle für reguläre Ausdrücke, deren Verhalten mit vielen nachgestellten Optionen geändert werden kann

Das m-Kommando steht für match, was Übereinstimmung bedeutet

Das m kann weggelassen werden, wenn man die Standardtrennzeichen für reguläre Ausdrücke verwendet, nämlich Schrägstriche

Der folgende Ausdruck durchsucht den Inhalt der $var-Variablen und gibt ein Array von Zeichenfolgen zurück, die dem Suchausdruck entsprechen

Wenn die Option g aktiviert ist, gibt die Suche im Listenkontext alle Übereinstimmungen zurück und deaktiviert alle übereinstimmenden Unterausdrücke

Im skalaren Kontext liefert der Ausdruck einen positiven Wert, wenn der Suchausdruck gefunden wird, mit der Option c die Anzahl der Übereinstimmungen

i macht es unabhängig von Groß- und Kleinschreibung, o interpoliert Variablen nur einmal, m behandelt den String als mehrzeilig und s als einzeilig

Die Option x ermöglicht es, den Suchausdruck zur besseren Lesbarkeit auf mehrere Zeilen zu verteilen und mit Kommentaren zu versehen

$var =~ [ m ] // [ g [ c ]][ i ][ m ] [ o ][ s ][ x ];

Das s-Kommando steht für „substitute“, was „ersetzen“ bedeutet

Er ersetzt den Teil des gegebenen Textes, auf den der Suchausdruck passt, durch den Ersetzungsausdruck

$var =~ s/// [ e ][ g ][ i ][ m ][ o ][ s ] [ x ];

Nach erfolgreicher Verwendung eines regulären Ausdrucks stehen folgende Sondervariablen zur Verfügung:

$& – die erkannte Zeichenkette

– der erkannte String $` – String vor dem erkannten String

– String vor dem erkannten String $’ – String nach dem erkannten String

– String nach dem erkannten String $1.

$n – Ergebnisse der Teilausdrücke in Klammern

.

– Ergebnisse der in Klammern gesetzten Unterausdrücke $+ – Der letzte übereinstimmende Unterausdruck

– der letzte übereinstimmende Teilausdruck @- – Start-Offsets von Übereinstimmungen und Teilübereinstimmungen

– Start-Offsets von Hits und Sub-Hit @+ – zugehörige End-Offsets

Der Operator tr///, der oft in einem Atemzug mit m// und s/// beschrieben wird, hat mit ihnen nur die Schreibweise gemeinsam

Es basiert auf dem UNIX-Befehl tr, mit dem einzelne Zeichen ersetzt werden

Als Synonym kann anstelle von tr auch y geschrieben werden

$var =~ tr // / [ c ][ d ][ s ];

Neben diesen beiden ist auch der Split-Befehl zu nennen, der eine Zeichenkette anhand eines Trennzeichens, das auch ein regulärer Ausdruck sein kann, aufteilt

Zitieren und Interpolieren [ bearbeiten | Quelle bearbeiten ]

Zitieroperatoren:

q – nicht interpretierte Zeichenkette in Anführungszeichen setzen (aliased zu ‘ ‘)

– nicht interpretierte Zeichenfolge in Anführungszeichen setzen (aliased zu „ “) qq – interpretierte Zeichenfolge in Anführungszeichen setzen (aliased zu „ “)

– interpretierte Zeichenkette in Anführungszeichen (Alias ​​für „ “) qw – Wörter in Anführungszeichen setzen, eine Liste von durch Leerzeichen getrennten Zeichenketten

– Wörter in Anführungszeichen setzen, eine Liste von durch Leerzeichen getrennten Zeichenfolgen qr – Regex in Anführungszeichen setzen oder kompilieren

– Regex zitieren oder kompilieren qx – externe Anwendung zum Ausführen zitieren (basierend auf perls readpipe )

Durch alternatives Zitieren und variable Interpolation entsteht ein besonders gut lesbarer Code

Ein Beispiel zur Verdeutlichung:

String-Verkettungen und Anführungszeichen im Text machen den Code schwer lesbar

$text = ‘Er ist mein Freund’

$name

‘ von ‘

$stadt

‘.’

$name

‘ hat in der Firma “‘

$firma

‘” für ‘ gearbeitet

$ Jahre

‘ Jahre.’ ;

Interpolation von Variablen im String machen nun das Ergebnis erkennbar

Escapes \ stören immer noch den Textfluss

$text = “Er ist mein Freund $name aus $town

$name arbeitet seit $years Jahren in der Firma \”$company\”.” ;

Das Ersetzen des Anführungszeichens macht Escapezeichen überflüssig

Der Code ist jetzt optimal

qq initiiert das Zitieren von Variablen in der Zeichenfolge

Jedes Zeichen danach ist das Anführungszeichen für diese Zeichenfolge

$text = qq{Er ist mein Freund $name aus $town

$name arbeitet seit $years Jahren in der Firma “$company”.} ;

Die häufigste Kritik an Perl ist, dass in Perl geschriebene Programme schwer lesbar sind

Zudem bietet Perl überdurchschnittlich viele Freiheiten, die zu unlesbarem Code führen können (siehe Disziplinen)

Andererseits ermöglicht die gleiche Freiheit auch eine Programmierung nahe der logischen Struktur des Problems oder des menschlichen Verständnisses

Die Freiheit, die Perl-Programmierer schätzen, persönlichen Vorlieben nachzugehen, muss in Projekten, die von mehreren Programmierern oder über einen langen Zeitraum entwickelt werden, durch selbst auferlegte Regeln eingeschränkt werden, um spätere Probleme zu vermeiden

Dies erfordert zusätzlichen Kommunikationsaufwand oder die Verwendung statischer Codeanalysetools wie Perl::Critic

Einige Teile der Syntax, wie z

B

das Ausdrücken von Objektorientierung und Signaturen, sind zwar einfach und sehr leistungsfähig, werden jedoch gegenüber vergleichbaren Sprachen wie Python oder Ruby oft übersehen, werden als veraltet empfunden und erfordern bei standardisierten Ansätzen zusätzliches Tippen und Nachdenken

besonders von Perl-Anfängern

Mit zusätzlichen Modulen lassen sich viele der Schwierigkeiten minimieren

Mit English gibt es ein Kernmodul, das den speziellen Variablen aussagekräftigere Namen gibt, und mit Moose gibt es ein sehr modernes und umfangreiches Objektsystem, das stark an dem von Raku angelehnt ist

Es gilt heute als De-facto-Standard für die objektorientierte Programmierung mit Perl.[15] Signaturen wurden in 5.20 eingeführt, werden aber immer noch als experimentell eingestuft

Perl wurde auch vorgeworfen, gegen die UNIX-Philosophie verstoßen zu haben

Siehe den Abschnitt Ursprünge

Kritik wurde auch an Raku geübt, weil es zu ehrgeizig sei und nach vielen Jahren keine sichtbaren Ergebnisse bringe, sondern Perls Zukunft lähme

Raku wurde von Anfang an als langfristiges Projekt proklamiert, das ausschließlich auf ehrenamtlicher, nicht immer planbarer Arbeit und kaum finanzieller Unterstützung basiert

Ihre konkreten Ziele wurden erst im Laufe der Entwicklung deutlich, und es gab deutliche Probleme bei der Kommunikation und Außendarstellung

Seit Perl 5.10 sind jedoch bedeutende Neuerungen aus der Schwestersprache hervorgegangen

Zum 30

Geburtstag von Perl im Dezember 2017 erklärte iX, die Sprache sei hinter die Erfolge von Java, PHP, Ruby und Python zurückgefallen und könne nicht mehr aufholen

Der Ruf von Perl ist “ruiniert”

Unglücklicherweise wird es derzeit als eine „Einmal schreiben, nie wieder lesen“-Sprache angesehen, die von der jahrelangen „Verschleiert-ist-cool“-Kultur und der Verbreitung der schlimmsten Aspekte von Perl genährt wird

Freizeit.“[16]

Perl-Kultur und Spaß [Bearbeiten| Quelle bearbeiten ]

Logo der Perl Foundation

Wie bei anderen Freie-Software-Projekten gibt es zwischen vielen Entwicklern und Benutzern der Sprache besondere soziale Bindungen, aus denen sich eine eigene Kultur herausgebildet hat

Die Perl-Kultur ist geprägt von Offenheit, Gastfreundschaft und Hilfsbereitschaft, aber auch von Individualismus, Verspieltheit und Humor

Larry Wall war anfangs sicherlich ein Vorbild dafür, da er in UNIX-Entwicklerkreisen schon eine prominente Stellung innehatte, als Perl durch andere Projekte wie rn oder patch veröffentlicht wurde, aber mittlerweile Randal L

Schwartz, Damian Conway, Audrey Tang , zählen auch Brian Ingerson und Adam Kennedy zu den Leitfiguren, deren Wirken innerhalb der “Szene” viel Beachtung findet

Im Gegensatz zu kommerziellen Programmiersprachen lassen sich fast alle Aktivitäten auf persönliche Beweggründe zurückführen

Dementsprechend ist die Perl Foundation eine rein ehrenamtliche Organisation, die sich als Dreh- und Angelpunkt einer selbstverwalteten Gemeinschaft versteht und mit den gespendeten Geldern einflussreiche Projekte und Personen unterstützt, Entwicklerkonferenzen organisiert und die wichtigsten Perl-bezogenen Websites betreibt

Meetings, Workshops und Konferenzen [Bearbeiten | Quelle bearbeiten ]

Lokale Benutzergruppen, die normalerweise ein- oder zweimal im Monat informelle Treffen und Vorträge veranstalten, nennen sich Perl Mongers und sind in über 200 Großstädten auf der ganzen Welt zu finden

Größer, viel straffer organisiert und meist länderspezifisch sind die jährlichen Workshops, von denen der etablierte deutsche Perl-Workshop[17] der erste war

Workshops wollen ambitionierte Entwickler vor Ort in einem möglichst günstigen Rahmen zusammenbringen

Ein ähnliches Ziel verfolgen die größeren Yet Another Perl Conferences (YAPC), die für die Regionen Nordamerika, Brasilien, Europa, Asien, Russland und Israel abgehalten werden

Die größte, aber auch die teuerste ist die von O’Reilly in den USA veranstaltete Perl Conference (TPC), die mittlerweile zu OSCON gehört

Seit etwa 2005 finden auch Hackathons für engagierte Mitwirkende statt

Viele Sprachfeatures von Perl laden dazu ein, Programmcode kreativ zu gestalten

Dies hat zu verschiedenen intellektuellen Wettbewerben und Traditionen rund um die Programmiersprache Perl geführt, manche humorvoll, manche skurril

Golf Golf ist ein Sport für Programmierer, bei dem das kürzeste Programm (in ASCII-Zeichen), das eine vorgegebene Aufgabe erfüllt, gewinnt

Da Perl viele zum Teil knifflige Abkürzungen und Abkürzungen gängiger Techniken kennt, ist dies eine besonders beliebte Disziplin unter Perl-Programmierern

Poesie Da Perl viele Elemente der englischen Sprache in sich aufnimmt, finden regelmäßig Wettbewerbe statt, bei denen die besten Beispiele der Perl-Poesie ausgezeichnet werden

Neben der freien Form, die nur Perl enthält, wird hier versucht, Gedichte zu schreiben, die vom Interpreter ohne Warnungen und Fehlermeldungen ausgeführt werden.[18] Es gibt auch einen Perl-Haiku-Wettbewerb, der dieser japanischen Form der Poesie gewidmet ist

Verschleierung Ebenfalls sehr berühmt und berüchtigt ist die Disziplin der Verschleierung, die auch einen jährlichen Wettbewerb (den Obfuscated Perl Contest) veranstaltet, der am ehesten mit dem International Obfuscated C Code Contest vergleichbar ist, den Larry Wall selbst zweimal gewonnen hat

Hier geht es darum, die Funktion eines Programms auf ungewöhnliche und kreative Weise zu verschleiern

In Perl ist das besonders einfach, weil fast alles Shortcuts hat, die Sprache selbst sehr dynamisch ist und vieles je nach Kontext automatisch passiert, was oft als „Perl-Magie“ bezeichnet wird

Ein Beispiel von Mark Jason Dominus, der den zweiten Preis beim 5

Annual Obfuscated Perl Contest im Jahr 2000 gewann (dieses Programm gibt den Text „Just another Perl / Unix hacker“ aus):

@P=geteilt//,”.URRUU\c8R”;@d=geteilt//,”

rekcah xinU / lreP rehtona tsuJ”;sub p{ @p{“r$p”,”u$p”}=(P,P);pipe”r$p”,”u$p”;++$p ;($q*=2)+=$f=!fork;map{$P=$P[$f^ord ($p{$_})&6];$p{$_}=/ ^$P /ix?$P:close$_}keys%p}p;p;p;p;p;map{$p{$_}=~/^[P.]/&& close$_}%p;warten until$?;map{/^r/&&<$_>}%p;$_=$d[$q];sleep rand(2)if/\S/;print Randal L

Schwartz JAPH A Art A Unterkategorie der Verschleierung ist die Disziplin JAPH, die Randal L

Schwartz öffentlich ins Leben gerufen hat.Das sind Signaturen, die kleine Perl-Programme enthalten, die meist nur den Namen des Autors oder eine möglichst unverständliche Nachricht ausgeben.Die Buchstaben JAPH sind die Initialen von Schwartz’ Unterschrift Just Another Perl Hacker Perligata Damian Conways Perl-Modul Lingua::Romana::Perligata ist wahrscheinlich eines der bizarrsten Module schlechthin: Es erlaubt dem Benutzer, Perl vollständig in Latein zu schreiben, wie es in der lateinischen Sprache der Fall ist die Satzstellung (weitgehend) irrelevant für die Bedeutung eines Ausdrucks, stattdessen werden die desc Verbindungen zwischen einzelnen Wörtern durch ihre Infl Abschnitt

Von Variablen über Referenzen bis hin zu mehrdimensionalen Arrays ist in dieser neuen Sprachdefinition alles vorhanden

Fast alle Sonderzeichen wurden aus der Sprache entfernt, Variablen mit gleichem Namen, aber unterschiedlicher Struktur (z

B

$next und @next) werden dekliniert, um die entsprechende Variable anzusprechen

Einige Beispielcodes:

insertum stringo unum tum duo excerpemento da

# Äquivalent zu: substr($string,1,2) = $insert; clavis hashus nominamentum da

# Äquivalent zu: @keys = Tasten %hash;

Aus einem ähnlichen Grund wurden „Sprachmodule“ für Klingonisch, Borg oder Leetspeak erstellt

Solche Module sind ein gutes Beispiel dafür, wie viel Zeit viele Leute Perl widmen; In diesem Sinne kann Perl durchaus als Hobby bezeichnet werden

Acme Brian Ingerson legte mit seinem bekannten Modul namens Acme den Grundstein für eine CPAN-Kategorie von Modulen, die oft keinen produktiven Nutzen haben, die dem Benutzer sofort nichts anderes tun, als zu bescheinigen, dass sein Programm den Gipfel der Perfektion erreicht hat absichtlich kontraproduktiv sind oder eine Funktion bieten, die unmöglich zu erreichen ist und als Witz aufgefasst werden sollte

Dieses Spiel mit skurrilen Ideen enthält beeindruckende ASCII-Kunst, Module, die den Quellcode unsichtbar machen (Acme::Bleach) oder ihn auf andere Weise humorvoll manipulieren, indem sie beispielsweise typische Präsident-Bush-Grammatikfehler hinzufügen oder Methoden zufällig löschen, die auf das Vorhandensein eines Gemeinten hinweisen um eine diebische Elster zu simulieren.

Mottos und Zitate [ bearbeiten | Quelle bearbeiten ]

Kamele aller Art sehen Perl-Programmierer als Maskottchen

Die London Perl Mongers adoptierten sogar einen aus dem Londoner Zoo

Es gibt viele bekannte Sprüche und Zitate, die sich mit Perl selbst oder den Möglichkeiten der Sprache befassen; Hier sind einige Beispiele: Perl: die Kettensäge der Schweizer Armee unter den Programmiersprachen

(Perl: Die Kettensäge der Schweizer Armee unter den Programmiersprachen

Anspielung auf die Vielseitigkeit der Schweizer Taschenmesser.)

“ (Perl: Die Kettensäge der Schweizer Armee unter den Programmiersprachen

Anspielung auf die Vielseitigkeit der Schweizer Taschenmesser.) „Perl ist die einzige Sprache, die vor und nach der RSA-Verschlüsselung gleich aussieht

“ (Keith Bostic)

(Perl ist die einzige Sprache, die vor und nach einer RSA-Verschlüsselung gleich aussieht.)

” ( ) (Perl ist die einzige Sprache, die vor und nach einer RSA-Chiffre gleich aussieht.) “ Nur Perl kann Perl parsen

“ (Larry Wand)

(Nur Perl kann Perl parsen.)

” ( ) (Nur Perl kann Perl parsen.) “ … Wir scherzen oft, dass ein Kamel ein Pferd ist, das von einem Komitee entworfen wurde, aber wenn Sie darüber nachdenken, ist das Kamel ziemlich gut für das Leben in der Wüste geeignet

Das Kamel hat sich relativ autark entwickelt

Andererseits hat sich das Kamel nicht entwickelt, um gut zu riechen

Perl auch nicht

“ (Larry Wall: über das Kamel als Perl-Maskottchen)

(..

wir scherzen oft, dass ein Kamel ein Pferd ist, das von einem Komitee entworfen wurde

Aber wenn man darüber nachdenkt, ist das Kamel ziemlich gut an das Leben in der Wüste angepasst

Das Kamel hat sich so entwickelt, dass es autark ist

Auf der anderen Seite Andererseits hat es sich nicht so entwickelt, dass es gut riecht, Perl auch nicht.)

“ ( : über das Kamel als Perl-Maskottchen) (… wir scherzen oft, dass ein Kamel ein Pferd ist, das von einem Komitee entworfen wurde

Aber wenn man darüber nachdenkt, ist das Kamel ziemlich gut an das Leben in der Wüste angepasst

Das Kamel hat sich zu entwickelt autark sein

Andererseits hat es sich nicht so entwickelt, dass es gut riecht

Perl auch nicht.) „Die Tatsache, dass es möglich ist, chaotische Programme in Perl zu schreiben, macht es auch möglich, Programme zu schreiben, die sauberer sind Perl, als sie jemals in einer Sprache sein könnten, die versucht, Sauberkeit zu erzwingen“ (Larry Wall: Linux World, 1999)

(Schon die Tatsache, dass es möglich ist, schmutzige Programme in Perl zu schreiben, macht es möglich, Programme zu schreiben, die sauberer sind als in Sprachen, die versuchen, Sauberkeit zu erzwingen.) “ ( : Linux World, 1999) (Schon die Tatsache, dass es möglich ist, schmutzige Programme in Perl zu schreiben, macht es möglich, Programme zu schreiben, die sauberer sind als in Sprachen, die versuchen, Sauberkeit zu erzwingen.) „ Perl : Write once – never wieder verstehen“

(Perl: Einmal schreiben – nie wieder verstehen

Eine Anspielung auf das Java-Mantra Einmal schreiben – überall laufen)

Wettbewerbe

2004 platzierte sich Perl in der Lightning Division des 7

International Conference on Functional Programming Contests und gewann 2007 den zweiten Platz

Wikibooks: Perl Programming – Learning and Teaching Materials – Learning and Teaching Materials

Windows 10 Backup einfach und automatisch Robocopy (Auch Windows 7 \u0026 8) New

Video ansehen

Weitere hilfreiche Informationen im Thema anzeigen da die ausführung von skripts auf diesem system deaktiviert ist

In diesem Tutorial zeige ich euch wie Ihr mit einfachen Boardmitteln unter Windows ein automatisiertes Backup eurer Daten wie z.B. Fotos, Musik oder Dokumenten einrichten könnt. Einmalig erstellt und ihr müsst euch danach nie wieder darum kümmern. Fühlt sich gut an zu wissen die Daten sind sicher 😀
Solltet Ihr noch Wünsche / Vorschläge für Tutorials / Howtos haben schreibt sie in die Kommentare, sollte ich mich mit dem Thema auskennen / die Möglichkeit haben sie zu erklären werde ich dies gerne tun.
Jahako @ Facebook: https://www.facebook.com/jahakoDOTcom
Jahako der Blog: http://www.jahako.com/
Jahako die Lets Plays: https://www.youtube.com/user/JahakoDotCom

da die ausführung von skripts auf diesem system deaktiviert ist Einige Bilder im Thema

 Update Windows 10 Backup einfach und automatisch Robocopy (Auch Windows 7 \u0026 8)
Windows 10 Backup einfach und automatisch Robocopy (Auch Windows 7 \u0026 8) Update

FHEM Referenz New Update

Die Angabe des Wochentags für den “von” Wert impliziert _nicht_ den gleichen Tag für den “bis” Wert, z.Bsp. deaktiviert [email protected] die Asführung von Montag bis Ende der Woche, aber nicht Sonntag (da alle Zeitangaben am Montag vor [email protected] liegen).

+ mehr hier sehen

Read more

Die letzten beiden Zeilen definieren einen Telnet- und einen WEB-Zugang, beide können bei Bedarf aber auch abgeschaltet werden

Das WEB-Interface ist erreichbar über

Die Kommunikation mit FHEM kann entweder in einer “Session” (über Telnet) oder über einzelne Client-Befehle (über fhem.pl) erfolgen

Beispiel:oderWenn FHEM als root gestartet wurde und ein OS-Benutzer fhem existiert, dann wechselt FHEM nach dem Start (über setuid) zu diesem Benutzer.Wenn FHEM mit der Kommandozeilenoption -d gestartet wurde (perl fhem.pl -d fhem.cfg ) , dann wird verbose auf 5 gesetzt und die Protokolle werden in STDOUT geschrieben

Die Umgebungsvariable FHEM_GLOBALATTR wird ausgewertet: Sie enthält durch Leerzeichen getrennte Name=Wert-Paare, wobei Name ein globales Attribut ist

So gesetzte Werte überschreiben die Werte aus der Konfigurationsdatei

Alle Geräte haben Attribute

Diese werden mit dem Befehl attr gesetzt, mit dem Befehl displayattr angezeigt und mit dem Befehl deleteattr entfernt

Es gibt globale Attribute, die von allen Geräten verwendet werden, und lokale Attribute, die nur für einzelne Geräteklassen gelten

Einige Geräte (wie FHEMWEB) definieren automatisch neue globale Attribute, wenn sie zum ersten Mal ein Gerät dieses Typs definieren

Sie können den Befehl verwenden

attr globales Benutzerattr

Verwenden Sie global für das Gerät, um neue globale Attribute zu deklarieren, und

attr userattr ,

neue lokale Attribute für bestimmte einzelne Geräte gemäß devspec zu deklarieren

ist eine durch Leerzeichen getrennte Liste, die die Namen der zusätzlichen Attribute enthält

Beispiele finden Sie in der attr-Befehlsdokumentation

Achten Sie darauf, keine zusätzlichen globalen Attribute zu überschreiben, die bereits zuvor von Ihnen oder einem Gerät definiert wurden

attr global userattr sollte so früh wie möglich in der Konfiguration erscheinen

Gerätespezifische Attribute sind im jeweiligen Geräteabschnitt dokumentiert

Die folgenden Attribute werden für Module verwendet, die das standardmäßige “Readings”-Update von fhem.pl verwenden

Konsultieren Sie die Modulattributliste, wenn Sie wissen möchten, ob dies unterstützt wird

Dieses Attribut akzeptiert eine durch Kommas getrennte Liste von Reading:Interval:Method:Function:HoldTime-Quintupeln

Sie können zum Lesen reguläre Ausdrücke verwenden

Wenn gesetzt, werden Aktualisierungen für die aufgelisteten Messwerte ignoriert und zugehörige Ereignisse für eine Sperrzeit von mindestens Intervallsekunden unterdrückt (Downsampling)

Nach Ablauf der Sperrfrist wird der Messwert mit einem Wert aktualisiert, der aus den Werten und Zeitstempeln der zuvor ignorierten Aktualisierungen innerhalb der Sperrfrist wie folgt berechnet wird:

Funktionsbeschreibung v der letzte gefundene Wert v0 der erste gefundene Wert min der kleinste gefundene Wert max der größte gefundene Wert mean der arithmetische Mittelwert aller Werte sd die Standardabweichung vom Mittelwert Median der Median aller Werte (benötigt holdTime und Funktion keine) Integral die arithmetische Summe (falls nicht zeitgewichtet) oder Integralfläche (falls zeitgewichtet) aller Werte n Anzahl der Samples t Zeitstempel des letzten Werts t0 Zeitstempel des ersten Werts

Wenn Methode none ist, dann ist das alles, was es gibt

Wenn method const oder linear ist, wird stattdessen die zeitgewichtete Wertereihe berücksichtigt

Das Gewicht ist die Zeitspanne zwischen zwei aufeinanderfolgenden Aktualisierungen

Bei der const-Methode ist der Wert der Wert des Messwerts zu Beginn der Zeitspanne; Bei der linearen Methode ist der Wert das arithmetische Mittel der Werte zu Beginn und am Ende der Zeitspanne

Verlängerungen von Sperrzeiten werden wie erwartet gehandhabt.

Typischerweise würde man die lineare Methode mit der Mittelwertfunktion für zeitlich kontinuierlich variierende Größen wie elektrische Leistungsaufnahme, Temperatur oder Geschwindigkeit verwenden

Für kumulierte Größen wie verbrauchte Energie, fallender Regen oder zurückgelegte Strecke wird die Keine-Methode mit der v-Funktion verwendet

Die konstante Methode ist für diskrete Größen, die konstant bleiben, bis der entsprechende Messwert aktualisiert wird, z

Zähler, Schalter und dergleichen.

Wenn die Haltezeit in Sekunden definiert ist, werden die Abtastungen im Speicher gehalten, was die Berechnung von Floating-Statistiken anstelle von Block-Statistiken ermöglicht

Wenn holdTime definiert ist, kann das Intervall undefiniert bleiben, so dass die Aktualisierungsrate der Messwerte unverändert bleibt, oder es kann auf einen Wert kleiner als holdTime für das Downsampling wie oben beschrieben mit einer vollständigen Historie der Messwerte im Speicher eingestellt werden

Beachten Sie, dass die historischen Samples nicht persistent sind und beim Neustart von FHEM verloren gehen

Der Ereignisaggregator berücksichtigt nur die Aktualisierungen, die nach der Vorverarbeitung gemäß den Anweisungen event-on-update-reading und event-on-change-reading verbleiben

Außerdem wird jede Aktualisierung eines Messwerts, die innerhalb einer Zeitspanne von der vorhergehenden Aktualisierung erfolgt, die kleiner als die Auflösung der Zeitgranularität von FHEM ist, verworfen

Wenn mehr als eine Funktion für denselben Messwert berechnet werden soll, muss der ursprüngliche Messwert multipliziert werden (z

B

durch Verwendung einer Benachrichtigung), bevor der Ereignisaggregator auf die abgeleiteten Messwerte angewendet wird.

08 – Async Layer | DirectX 12 Beginners Tutorial [Deutsch] New Update

Video unten ansehen

Neues Update zum Thema da die ausführung von skripts auf diesem system deaktiviert ist

Quellcode: https://github.com/Ohjurot/UGF12/releases/tag/V8
DirectX 12: https://docs.microsoft.com/en-us/windows/win32/direct3d12/directx-12-programming-guide
WinApi: https://docs.microsoft.com/en-us/windows/win32/api/
Musik: Epidemicsound
DirectX incl. Logo: Microsoft Corporation

da die ausführung von skripts auf diesem system deaktiviert ist Einige Bilder im Thema

 Update 08 - Async Layer | DirectX 12 Beginners Tutorial [Deutsch]
08 – Async Layer | DirectX 12 Beginners Tutorial [Deutsch] Update New

Weitere Informationen zum Thema da die ausführung von skripts auf diesem system deaktiviert ist

Updating

Suche zum Thema da die ausführung von skripts auf diesem system deaktiviert ist

Updating

Danke dass Sie sich dieses Thema angesehen haben da die ausführung von skripts auf diesem system deaktiviert ist

Articles compiled by Tratamientorosacea.com. See more articles in category: DIGITAL MARKETING

Related Videos

Leave a Comment