Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Inhalt einer xxx.bat löschen

Mitglied: slofis

slofis (Level 1) - Jetzt verbinden

27.10.2011, aktualisiert 18.10.2012, 2876 Aufrufe, 10 Kommentare

Hallo

Ein Haupt-Programm XY löst eine 1.bat aus.

Es soll verhindert werden, das der Inhalt von 1.bat nochmal ausgeführt wird, wenn das Haupt-Programm XY öfters anspricht und damit die 1.bat wiederholt anspricht.


Wenn ich die 1.bat nur lösche od. rename, kommt die Verknüpfungsfehlermeldung und
nachfolgende automatisierte Programme werden solange verhindert, bis ich die Fehlermeldung wegklicke.

folgendes habe ich schon versucht.

In der 1.bat steht

@echo off
start 1.qmx
start z-parswitch -schalt 888 1 300 0
start del_1.bat
cls

in der del_1.bat steht

@echo off
del 1.bat
mk 1.bat
cls

Dies sollte eigentlich bewirken, das die 1.bat hernach ohne Inhalt da steht.

Allerdings wird statt der Datei 1.bat ein Ordner erstellt, der 1.bat heist.

Hab schon versucht hier eine Lösung zu finden. Aber bei dem Wirrwarr von %- und anderen Sonderzeichen kenn ich mich echt nicht aus.

Ich kenne halt nur die einfachen Befehle und da nicht alle.

Ich bitte um eine Lösung, die einfach gestrickt ist

Gruß Stephan
Mitglied: regedit19
27.10.2011 um 08:57 Uhr
Hallo!

Du könntest u.U die Option:
01.
 %0 
verwenden.

Dies wird aber leider dazu führen, da sich die Datei nicht löschen lässt, da sie gerade von sich selbst verwendet wird.


regedit19
Bitte warten ..
Mitglied: Skyemugen
27.10.2011 um 09:11 Uhr
Aloha,

hast du schon versucht einfach statt del 1.bat einfach type nul>1.bat zu nutzen?

Was bitte ist eigentlich mk?

Und wenn 1.bat geleert wird, wie soll das Hauptprogramm 1.bat nächstes mal wieder korrekt ausführen?

... ein wenig seltsam das Ganze

greetz André
Bitte warten ..
Mitglied: regedit19
27.10.2011 um 09:26 Uhr
Hallo!

Zitat von Skyemugen:

Was bitte ist eigentlich mk?

Ich glaube mit mk möchte er einen Ordner erstellen, was aber nur mit mkdir funktioniert.

regedit19
Bitte warten ..
Mitglied: Skyemugen
27.10.2011 um 09:31 Uhr
Zitat von regedit19:
Ich glaube mit mk möchte er einen Ordner erstellen

Dies sollte eigentlich bewirken, das die 1.bat hernach ohne Inhalt da steht.
... ob er das möchte?
Allerdings wird statt der Datei 1.bat ein Ordner erstellt, der 1.bat heist.
... wundert mich, dass dies mit mk funktioniert aber wenn bei ihm doch md oder mkdir steht, wundert mich, dass er sich wundert, dass ein Ordner erstellt wird ...

greetz André
Bitte warten ..
Mitglied: 60730
27.10.2011, aktualisiert 18.10.2012
moin und willkommen,

Ich kenne halt nur die einfachen Befehle und da nicht alle.

Du irrst dich - @echo off ist ein doppelbefehl und den kennst du - was er macht und das das dich rätseln läßt - merken wir.

Ich bitte um eine Lösung, die einfach gestrickt ist
Na dann wollen wir mal.
André hat dir ja einen Doppeltipp gegeben, aber der ist genauso, wie du in der Überschrift schreibst.

Das "echte" problem ist aber wohl eher hier zu suchen..

Es soll verhindert werden, das der Inhalt von 1.bat nochmal ausgeführt wird, wenn das Haupt-Programm XY öfters anspricht und damit die 1.bat wiederholt anspricht.

  • such mal nach:

Start /?
in deiner Dosbox
tasklist hier im Forum - z.B der 7. Treffer

Klar kann dir das jeder mal eben zusammenbraten, aber dann lernst du nix.
Falls du Probleme haben solltest, dann nutze bitte die Code Tags und wir helfen (ich nur, wenn das @echo off nicht vorangestellt ist)

Gruß
Bitte warten ..
Mitglied: slofis
27.10.2011 um 20:45 Uhr
Zitat von Skyemugen:
Aloha,

hast du schon versucht einfach statt del 1.bat einfach type nul>1.bat zu nutzen?

Was bitte ist eigentlich mk?

Und wenn 1.bat geleert wird, wie soll das Hauptprogramm 1.bat nächstes mal wieder korrekt ausführen?

... ein wenig seltsam das Ganze

greetz André

Uff, Ich hab mich glatt verschrieben... meinte natürlich md und ich dachte, wenn ich eine Endung anhänge, das dann statt eines Ordners eine *.bat erstellt wird.

Ja, lacht nur, aber ich habe echt sehr wenig Ahnung davon

Die 1.bat fülle ich hernach händisch aus einer Kopie der 1.bat wieder auf.

Ja, mit nul>1.bat ist die 1.bat dann leer.

nul>1.bat bewirkt aber auch, das die nächste Fehlermeldung kommt (keine Win32 Anwendung) weil ja kein Befehl mehr vorhanden ist in der 1.bat

.
Bitte warten ..
Mitglied: 60730
27.10.2011 um 21:59 Uhr
Salve

nul>1.bat bewirkt aber auch, das die nächste Fehlermeldung kommt (keine Win32 Anwendung) weil ja kein Befehl mehr vorhanden ist in der 1.bat

  • schau doch mal Spasseshalber, was dir einer ~43 minuten - nachdem du deine Frage gestellt hast - geantwortet hat.
Bitte warten ..
Mitglied: slofis
27.10.2011 um 23:03 Uhr
n'Abend

Hab mal nach " mit Batch eine Batch erstellen" gegoogelt und hernach folgendes fabriziert.

In der 1.bat steht

start xxx.qmx
start z-parswitch
start 2.bat
cls
In der 2.bat steht

del 1.bat (mit nul> gings nicht)
echo a> 1.bat
cls
Nun existiert die 1.bat mit dem Inhalt a

Die 1.bat kann nun mehrfach angesprochen werden, ohne eine Fehlermeldung zu fabrizieren.

Kleiner Schönheitsfehler:

Wird 1.bat und in folge 2.bat ausgelöst, bleibt am Schluss ein Dos-Fenster auf.

Wie kann ich dieses Fenster mit einem Befehl zum schließen bewegen ?

Gruß Stephan

PS: was sind Code Tags ?
Bitte warten ..
Mitglied: Biber
27.10.2011 um 23:33 Uhr
Moin slotis,

viele nennen mich ja "Biber den Geduldigen", aber manchmal...

Ich weiss nicht, was ihr da für einen Heckmeck macht mit irgendwelchen sich gegenseitig rufenden und löschenden Akrobatikbätschen aus dem Internet.

Wenn es denn ein ernstgemeinter Plan sollte, dass der Batch wirklich gelöscht werden oder überschrieben werden muss, damit er nur einmal ausgeführt wird, dann kann er sich doch selbst löschen.

Demo am CMD-Prompt:
 
C:\Temp>echo pause ^& del "%~f0">delMe.cmd 
 
C:\Temp>delme 2>nul 
 
C:\Temp>pause   & del "C:\Temp\delMe.cmd" 
Drücken Sie eine beliebige Taste . . . 
 
C:\Temp>delMe 
Der Befehl "delMe" ist entweder falsch geschrieben oder 
konnte nicht gefunden werden.
Wie zu sehen ist, wird das "Lösch-mich-selbst" aus der Bätschdatei selbst aufgerufen und auch klaglos ausgeführt - warum auch nicht.
Natürlich gibt es Mecker in Form einer Fehlermeldung "Die Batchdatei kann nicht gefunden werden.".
Aber die schicke ich mit "2>nul" zu den Fischen.

Anyway- es ist nun nicht nötig, die Batchdatei zu löschen, wenn sie nur einmal lausfen soll.
Dann stelle doch lieber zwei Dateien bereit, nämlich die cmd-Datei und im selben Verzeichnis eine LaufNurEinmal.xyz mit beliebigem oder keinem Inhalt.

In die zweite Zeile deiner Batch (nach dem @echo off & setlocal) schreibst du
IF not exist %~dpLaufNurEinmal.xyz goto :eof
.... hier dein Nutzcode
.... falls der Schnipsel bis zum Ende gekommen ist ->als letzte Zeile
del %~dpLaufNurEinmal.xyz

Fertig is.

Grüße
Biber

P.S. "Code Tags" sind diese kleinen grünen Bonbons, die es früher nur in Duty-Free-Shops gab...
Andere Erklärungen findest du unter "Formatierungshilfe", die rot leuchtet, wenn du einen Kommentar schreibst.
Bitte warten ..
Mitglied: Skyemugen
28.10.2011 um 08:45 Uhr
Zitat von slofis:
nul>1.bat bewirkt aber auch, das die nächste Fehlermeldung kommt (keine Win32 Anwendung) weil ja kein Befehl mehr vorhanden ist in der 1.bat

... ich schrieb auch nicht nul>1.bat ...

type nul>1.bat

Bei nul>1.bat bekomme ich unter Win XP höchstens Zugriff verweigert

Und <code></code>-Tags sind in der Formatierungshilfe (link) eigentlich nicht zu überlesen ...
Bitte warten ..
Ähnliche Inhalte
Exchange Server

Inhalt von Postfächern in Exchange löschen

gelöst Frage von m.reegerExchange Server9 Kommentare

Hallo liebe Admins, ich bin gerade dabei den Exchange aufzuräumen und stoße hier mal wieder an meine Powershell-Kenntnis grenzen. ...

Windows Server

PowerShell Inhalt einer csv Datei löschen

gelöst Frage von makaroniWindows Server4 Kommentare

Hallo zusammen, ich möchter gerne automatisiert über einen Task alle 10 Min eine CSV Datei via Powershell einlesen und ...

Batch & Shell

Lösche Inhalt in bestimmten Unterordner wenn älter als

gelöst Frage von KnuefiBatch & Shell7 Kommentare

Hallo, ich benötige eure Hilfe. Ich habe unterstehendes Script, leider funktioniert es nicht. Es wird nichts gelöscht. Was habe ...

Batch & Shell

Powershell Excel bestimmten Inhalt löschen

gelöst Frage von TastuserBatch & Shell4 Kommentare

Hallo! Ich habe eine Excel-Tabelle (Tabelle1), die in Zellen B3 bis B15 und D3 bis D15 ein ü enthält. ...

Neue Wissensbeiträge
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 1 TagWindows 105 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 1 TagAdministrator.de Feedback18 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 2 TagenHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 3 TagenGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Windows Server
Standortvernetzung zu einem Strato VServer (Windows)
Frage von matzefratze81Windows Server10 Kommentare

Moin, ich komme aus einem Enterprise-Umfeld und habe den Fehler gemacht, dass ich mich auf ein kleines Unternehmen eingelassen ...

Grafikkarten & Monitore
4k EIZO Monitor, Fernseher und Splitter
Frage von LerxxeyGrafikkarten & Monitore9 Kommentare

Hallo Zusammen, vielleicht könnt ihr mir bei einem Problem helfen wo ich einfach nicht mehr weiterkomme Und zwar haben ...

Microsoft Office
Freitagsfrage? Excel und CSV - Import statt öffnen
gelöst Frage von KraemerMicrosoft Office7 Kommentare

Moin zusammen, entweder fallen mir heute nicht die richtigen Wörter für Google ein, oder es geht schlicht nicht. Gibt ...

Entwicklung
Batch - Überprüfung
gelöst Frage von apex.predator24Entwicklung6 Kommentare

Hallo Zusammen Gibt es eine Möglichkeit, einen Prozess im TaskManager über eine Batch-Datei zu überprüfen ob dieser läuft oder ...