Die beste Motivation sind drei Leute, die sagen, dass dies mit Batch nicht geht :)

set "pfad=E:"
dir /s /b "%pfad%">"%tmp%\listA"
:: Ausgabe deaktivieren für bessere Performance
echo off


:main
timeout /t 1 /nobreak
dir /s /b "%pfad%">"%tmp%\listB"
type "%tmp%\list*"
for /F "tokens=* delims=" %%I in (%tmp%\listA) do (
    findstr /X /C:"%%~I" "%tmp%\listB">nul&&(
        if "%%~tI"=="%date% %time:~0,5%" (
            findstr /X /C:"[%date% %time:~0,5%] ~ %%~I" "%~dp0log.txt">nul||(
                findstr /X /C:"[%date% %time:~0,5%] + %%~I" "%~dp0log.txt">nul||(
                    echo[[%date% %time:~0,5%] ~ %%~I
                )
            )
        )
    )||(
        echo[[%date% %time:~0,5%] - %%~I
    )
)>>"%~dp0log.txt" 2>nul
for /F "tokens=* delims=" %%I in (%tmp%\listB) do (
    findstr /X /C:"%%~I" "%tmp%\listA">nul||(
        echo[[%date% %time:~0,5%] + %%~I
    )
)>>"%~dp0log.txt" 2>nul
del "%tmp%\listA"
ren "%tmp%\listB" listA
goto main

Wegen ein paar Optimierungen (Hinzugefügte Dateien wurden auch als geänderte Dateien aufgeführt, etc) ist der Code dann doch etwas länger geworden.

Die Laufzeit ist halt nicht wirklich hervorragend (hast zwei mal einen Loop mit O(n^2) drinnen), was du spätestens bei einer großen Anzahl an Dateien merken wirst. Trotzdem sollte ein Durchlauf nicht länger als eine Minute dauern.

PS:

Die Datei  „Artikel13.txt“ wurde am  23.03.2019 um  14:00 Uhr  gelöscht ( - ).

Das würd ich gern in den log-Dateien einiger EU-Abgeordneter lesen ^^

...zur Antwort

Batch bleibt Batch, da hilft auch kein Einpacken in eine .exe-Datei.

...zur Antwort
Ich habe Keinen Lieblings befehl, aber ich benutze oft:

Spontan würde ich sagen sind findstr und for meine Favoriten.
Wenn es nicht nur auf Befehle beschränkt sein muss, sind Pipes, Umleitungen und &, &&, || - Verknüpfungen meine "Lieblingsbestandteile" der Syntax.
Am häufigsten benutze ich wahrscheinlich den set-Befehl.

...zur Antwort
Ich habe auch ein paar möglichkeiten gefunden sowas auszuführen

Dann wäre es gut, wenn du diesen Code mit angeben würdest. In diesem Fall ist das aber zum Glück kein Problem, da das Problem in einer Zeile lösbar ist:

set p="notepad.exe"
tasklist/NH|find/I %p%||start "" %p%

Jetzt aber zur Erklärung:

Die erste Zeile dient nur dazu, dass die Batch vielfältiger einsetzbar und leichter zu ändern ist, da du nur an einer Stelle den Programmnamen p eingeben musst. (Falls du zum starten des Programms allerdings einen Pfad brauchst, musst du diesen beim Parameter des start-Befehls zusätzlich angeben.)

Die zweite Zeile besteht aus drei Teilen und Befehlen:

1) tasklist: Tasklist ist der Grundbaustein des Programms, da dieser Befehl eine Liste der Prozesse anzeigt, die zurzeit auf einem lokalen bzw. Remotecomputer ausgeführt werden. (Der Parameter /NH entfernt lediglich die in diesem Fall unnötigen Überschriften)
Ist das Programm p geöffnet, ist es in dieser Liste enthalten, ansonsten nicht.

2) find: Und genau dies wird nun mit find überprüft. Find erhält mithilfe der Pipe | die Auflistung aller Programme von tasklist. Wir suchen nun (ohne Groß- und Kleinschreibung zu beachten, darum der Parameter /I) nach dem Programm. Wird dieses nicht gefunden, wird der nächste Befehl, der mithilfe eines Oders || angeknüpft ist, aufgerufen.

3) start: Hiermit wird das Programm schlussendlich gestartet. Falls du einen Pfad mit angeben musst, kannst du das so lösen:

set "f=notepad.exe"
set "p=C:\Windows\System32\"
tasklist/NH|find/I "%f%"||start "" "%p%%f%"
...zur Antwort

Ich weiß leider nicht inwieweit die Texte, aus denen du den Wert auslesen willst, variieren und habe dir aus diesem Grund ein möglichst variables Skript geschrieben:

@echo off & setlocal enableDelayedExpansion

set tag=text
set /P txt=<"file.txt"

set "txt=!txt:*<%tag%>=!"
set "end=!txt:*</%tag%>=!"
set "txt=!txt:</%tag%>%end%=!"

echo. Der String im tag "%tag%" ist "%txt%"
pause

In die Variable "tag" kommt der tag-Name, in deinem Beispiel "text".
Statt "file.txt" setzt du deinen Dateinamen ein.
Am Ende hast du dann den String in der Variable "txt" gespeichert.

Ich habe zum Beispiel folgende Datei (file.txt) zum Testen verwendet:

Dies ist ein Text mit <text>Inhalt</text> und noch mehr Text.
...zur Antwort

Ja, geht natürlich mit Batch.

Hab hier mal verschiedene Funktionen in einem Repository vereint: https://github.com/timlg07/GRYPTER

Falls du dort was nicht verstehst / anders haben möchtest, meld dich einfach.

...zur Antwort
Kann ich dir NICHT Empfehlen.

2 GB Arbeitsspeicher sind schon sehr wenig...

Und warum hat der VGA, aber kein HDMI 🤔

...zur Antwort

Es schaut so aus, als würde es öfters auftreten, dass WhatsApp inaktive Accounts entfernt, diese sollten aber wieder einfach zu reaktivieren sein.

Eventuell tritt das auch auf, weil die SIM-Karte inzwischen deaktiviert wurde?

...zur Antwort

Für kleine, einzeilige "Datenströme" sollte folgendes genügen:

Ausgeben:

(echo.Hier die Daten die du dem anderen Skript mitteilen willst)>"%tmp%\example.txt"

Einlesen:

set /P var=<"%tmp%\example.txt"

Was genau willst du denn realisieren?

...zur Antwort

Naja wenn du wirklich nur reines Batch haben willst, ist minimiert starten wohl die einzige Option:

if "%~1"=="true" goto main
start /min "" %0 true
exit

:main
	echo Hier dein Code...
	pause
exit
...zur Antwort

Ich glaube der Fehler steckt in deiner zweiten for-Schleife. Zunächst fällt auf, dass du statt einfach nur den String %%f anzugeben diesen mit echo schreibst (das ist zwar unnötig, sollte aber noch kein Grund für einen Fehler sein). Da du die for-Schleife ausschließlich zum setzen einer Variablen verwendest, die du auch so setzen könntest, ist diese komplett unnötig. Vielmehr ist diese Variable sogar die Fehlerquelle: Sie ist zu Beginn noch nicht definiert, da cmd erst die Variablen durch ihre Werte ersetzt und dann anfängt den Code auszuführen. In deinem Fall ist das ganze aber leicht zu beheben (auch ohne DelayedExpansion, mit der Variablen verzögert ausgelesen werden können): Da du die Variable nur einmal brauchst, kannst du sie komplett weglassen und an der Stelle direkt ihren variablen Wert eintragen:

@echo off
set /p "ort=Verzeichnis: "
set /p "vorsilbe=Vorsilbe: "
echo.
echo Veraenderte Dateien:
for /R "%ort%" %%F in (.) do (
    echo."%%F"
    rename "%%~fF" "%vorsilbe%%~nxF"
)
pause

Habe mir jetzt keine Ordnerstruktur angelegt und getestet, müsstest mal eben selber schauen, ob es jetzt funktioniert.

PS: Nachdem du nur veränderte Dateien ausgeben willst, ist das hier vielleicht besser geeignet:

@echo off
set /p "ort=Verzeichnis: "
set /p "vorsilbe=Vorsilbe: "
echo.
echo Veraenderte Dateien:
for /R "%ort%" %%F in (.) do (
    ren "%%~fF" "%vorsilbe%%~nxF" && echo."%%F"
)
pause
...zur Antwort

Du willst einen Background/Hintergrund in CSS realisieren ...

Web/CSS/background

Kleine Bearbeitung bezüglich deines Beispiels:
Dort musst du einfach die URL zu dem Bild einfügen:

background: url("test.jpg"); 
...zur Antwort

Damit sprichst du meiner Meinung nach zwei Themenbereiche an. Du hast ja theoretisch die Freiheit nicht für dieses System zu arbeiten, nur kannst du dich dadurch schlechter mit Lebensnotwendigem und zusätzlichen Konsumgütern versorgen.

Freiheit ist zwar ein entscheidender Wert in unserem System, jedoch wird dieser für hierzulande Übergeordnetes eingeschränkt. In diesem Zusammenhang ist vor allem Sicherheit zu nennen: die Sicherheit vor Gewalt oder allgemein vor Verbrechen, sowie auch die soziale Sicherheit (Geld für Arbeitslose, Arbeitsunfähige, Rentner; Versicherungen; etc.).

Würde man absolute Freiheit durchsetzen, würde das in Anarchie und Chaos enden. Dafür verantwortlich ist der Mangel an Sophrosyne (Selbstzügelung), durch den der Mensch zu einer Bedrohung für sich selbst werden würde.

Hierzu ein passendes und -- wie ich finde -- gutes Zitat von Alexander von Schönburg:

Der Mensch vermag das Allergroßartigste. Und das Allerniederträchtigste. Beides. Seine Möglichkeiten sind so immens, dass die Fähigkeit, sich selbst zu beschränken und nicht alles zu tun, was man tun kann, die wohl eleganteste Form von Freiheit ist. 

'

Ich würde sogar soweit gehen und Systeme ohne komplette Freiheit als die bevorzugten ansehen. Unser Vorteil ist, das wir diese Systeme selbst konzipieren und modifizieren können. Und wo wir gerade schon bei Alexander von Schönburg sind:

Auch Ameisen und Bienen haben Hierarchien, ebenso wie Affen natürlich, aber nur Menschen sind fähig, sich Hierarchien auszudenken und sich dann entlang gemeinsamer Absprachen zu organisieren. 

'

Abschließend möchte ich darauf eingehen, warum die Demokratie -- ein auf diese Weise entstandenes System -- das zurzeit vielleicht beste (aber dennoch nicht perfekte) seiner Art ist.

Die Demokratie ist nämlich hinterfragbar, da sie die endgültige Wahrheit nicht für sich beansprucht. Auch ein anderer, vor allem westlicher (und christlicher) Wert ist in unserem System vorzufinden: die Achtung vor dem Schwachen. Diese spiegelt sich vor allem in vorher genannten Sozialleistungen wieder, ist aber auch in der Chance auf eine Teilhabe an der Gesellschaft und der mit ihr verbundenen Politik für alle zu finden.

Mit dem zweiten Teil deiner Frage greifst du vor allem den Kapitalismus als Wirtschaftssystem an. Dies stellt ein weiteres, interessantes und viel diskutiertes Thema dar, das aber eine enorme Komplexität mit sich zieht.

Statt darüber zu schimpfen, sollte man sich vielmehr mögliche Lösungen der Probleme überlegen und dem Thema so mit konstruktiver Kritik begegnen. Durch die eben angesprochene Komplexität sind solche Lösungen aber in der Regel leider nicht so leicht, trivial und einseitig wirksam wie in unseren Vorstellungen.

...zur Antwort

Den Titel kannst du ganz trivial mit dem Befehl "title" ändern:

title Fenster NICHT schließen und Internetzugang nicht kappen

Die Größe kannst du mithilfe von "mode" ändern. (Mehr Infos mithilfe von "mode/?")

Mithilfe von cols legst du die columns, also die Anzahl der Spalten und damit die Breite fest. Mit lines die Anzahl der Zeilen bzw. die Höhe. Zum Beispiel:

mode con cols=35 lines=15

Übrigens führst du mit cmd.exe keine Bash-, sondern Batch-Dateien aus :)

...zur Antwort

Ich schätze am einfachsten wird es sein mithilfe von

echo off

Die Ausgaben der Befehle zu unterdrücken.

Da zum Ausführen des "echo off"-Befehls aber die Ausgabe noch aktiviert ist, musst du diese entweder selbst danach entfernen:

echo off
cls

oder mithilfe eines "@" am Zeilenanfang unterdrücken:

@echo off

Letztere Methode findet man für gewöhnlich am Anfang jeder Batch-Datei, die mit dem Benutzer interagieren soll.

Hier noch mal dein Programm, jetzt hoffentlich so, wie von dir geplant: (Habe auch die Farbe geändert, wie es sich für einen professionellen Hacker gehört ;)

@echo off
color 0A
title Hack-Tool
prompt Hack-Tool:
cmd /k

~Tim

...zur Antwort

Mein Code dafür ist dann doch etwas komplexer geworden, da bei meiner normalen Methode Buchstaben einzeln auszugeben (

echo.|set /P "=A"

) Leerzeichen am Anfang getrimmt werden und somit keine Leerzeichen alleine ausgegeben werden können.

Folgender Code sollte dann aber auch mehr Zeichen unterstützen:

(Die Variable string enthält deine auszugebende Zeichenkette, Zeilenumbrüche realisierst du mithilfe von \n)

@echo off & setlocal enableDelayedExpansion
set "string=encrypt -all\nEncrypting your files...\nFinished.\nTesting some characters now:=?~+^&><|)(\/"

:LOOP
if not defined string goto hold
set "current_char=%string:~0,1%"
set "next_2_chars=%string:~0,2%"
if "%next_2_chars%"=="\n" (
	echo.
	set "string=%string:~2%"
	goto loop
)

for /f %%A in ('copy /Z "%~dpf0" nul') do set EOL=%%A^


::Die Leerzeile hier nicht entfernen!
<nul set /p "=x!EOL!!current_char!" >ln.tmp
findstr /v $ ln.tmp
del ln.tmp
set "string=%string:~1%"
goto loop

:HOLD
pause>nul

Sollte von der Geschwindigkeit her eigentlich angemessen sein, habe versucht mithilfe von

ping 192.0.2.0 -n 1 -w 80>nul

kleine Verzögerungen einzubauen, aber leider ist ping für diesen Zweck sehr unzuverlässig. Und Erweiterungen wie BatBox lohnen sich für eine minimale Verzögerung dann glaub ich auch nicht.

...zur Antwort