Thema: Diese Nachricht zerstört sich selbst!
Klicke hier, um dich anzumelden
Du kannst aus dieser Liste ein Symbol für deine Nachricht auswählen.
Wenn du diese Option aktivierst, werden URLs automatisch mit BB-Code ergänzt. www.beispiel.de wird zu [URL]http://www.beispiel.de[/URL].
Wenn du möchtest, kannst du dieses Thema bewerten.
Zitat von terra-power Wenn euch das Thema interresiert, schaut euch mal die Windows Power Shell an, die ist Objectbasierend und es gibt endlich mal ordentliche Pipes. Also die Ausgabe, lässt sich ordentlich per tee steuern. Einer meiner Lieblingscommandos: cat bla.txt | sort | tee sorted.txt :-) ähm.... Was ist 'Windows Power Shell' bb chris12 Edit und was macht Code: cat bla.txt | sort | tee sorted.txt ich habs probiert aber ich fersteh irgent wie nicht was es machen soll bb chris12 PS: Wer Rchtschreibfehler findet, darf sie behalten!
cat bla.txt | sort | tee sorted.txt
Wenn euch das Thema interresiert, schaut euch mal die Windows Power Shell an, die ist Objectbasierend und es gibt endlich mal ordentliche Pipes. Also die Ausgabe, lässt sich ordentlich per tee steuern. Einer meiner Lieblingscommandos: cat bla.txt | sort | tee sorted.txt :-)
thx ich glaub das wars jetzt mit den fragen danke für alle antworten mfg chris12 edit: das letzte mal als ich danach gegoogled hab war leztes jahr ich hab heute nochmal gegoogled und wurde in einem anderen forum fündig geworden Code: @ECHO OFF set /p a=geben sie einen beliebigen text ein: echo.%a%>test.txt pause>nul mfg chris12
@ECHO OFF set /p a=geben sie einen beliebigen text ein: echo.%a%>test.txt pause>nul
Das sollte mit Befehlsparametern gehen, jedoch verwirrt mich, dass Befehlsparameter bei mir plötzlich nicht mehr funktionieren Oo Hatte ich mir so vorgestellt: Code: @ECHO OFF echo.%1>test.txt Gruß
@ECHO OFF echo.%1>test.txt
ich weiss ich nerve aber ich hab noch ne frage die mich sehr interssiert wie kann man eine batch datei so proggen das man eine benutzer eingabe macht und die zum beispiel in der datei pp.txt abgespeichert wirt ich hab schon gegoogled aber nichts gefunden danke jezt schon mfg chris12
danke für die antwort ich wet es gleich mal ausprobieren thx & mfg chris12 ps: die 12 hat nichts mit meinem alter zu tun PPs: fagt nicht wie ich darauf komme das jetzt zu schreiben! EDIT: hat gefunzt thx mfg chris12
Find ich gut. ^^ Ich würde mal sagen, Einlesen geht so: Code: @ECHO OFF MORE < test.txt PAUSE>NUL MORE ist ein altes DOS-Utility und gibt Text formatiert auf dem Bildschirm aus. Die Eingabe-Umleitung funktioniert mit ECHO anscheinend nicht. Gruß
@ECHO OFF MORE < test.txt PAUSE>NUL
@terra-power Zitat von terra-power Ich verstehe dein Problem nicht. Ein Programm, welches grade läuft, kann nicht gelöscht werden. Da meckert das Betriebsystem. Du kannst aber, aus einem Programm heraus eine batch datei aufrufen, die das übernimmt. In dieser baust du eine kleine Pause ein, dann schließt du das eigentliche Programm.übrig bleibt nur die batch datei. So kann man beispielsweise ein Programm realisieren,welches nur einmalläuft. Problem an der sache: bekommt jemand mit, dass die batch datei dafür verantwortlich ist, siehst du alt aus. aber im allgemeinen sind daten löschen, egal ob über batch ebene oder programm ebene kein problem, besonders dann, wenn der löschaufdtrag von außen kommt: Das ganze schön als dienst 'verstecken' und wenn einer mit seine maus auf 'start' klickt, wird die festplatte formatiert :-) ich hätt dazu mal ne frage trifft das auch auf batch-datein zu weil ich hab mal ein batchprogamm geschrieben was sich selbst löscht die datei heißt 'abc.bat' Code: @echo nach dem drücken einer beliebigen Taste löscht sich das programm selbst... @pause>nul del abc.bat also bei mir funzt es! @Grulf ich hab mal deinen code geändert Code: @ECHO OFF :main echo.Hello World Pause>NUL ren %0 sysTmpDel.bat del sysTmpDel.bat ::dann brauchst du Sdel.bat nicht, allerdings löscht sie sich nach den ersten öffnen! um sie beim zweiten öffnen löschen zu lassen Code: @ECHO OFF If exist sysTmpDel.bat goto 1 echo.Hello World Pause>NUL echo.erstes oeffnen, nicht noch einmal sonst.... pause>nul ren %0 sysTmpDel.bat :1 echo.Achtung zweites oeffnen die datei wird geloescht! pause>nul del sysTmpDel.bat du kannst es auch so schreiben Code: @ECHO OFF If exist %0.bat goto 1 echo.Datei nochmal oeffnen! Pause>NUL :1 echo.del %0>%0 ::das sorgt dafür, dass egal welcher dateiname es ist, die datei gelöscht wird außerdem ::sorgt das dafür, dass keine veränderungen im dateinamen sichtbar sind! ich habe alle cods ausprobiert bei mir lief es ich hoffe ich habe alles richtig gemacht und richtig erklärt @ all ich hätt noch ne frage wie kann man mit hilfe einer batch datei eine zeile aus einer z.b. vorher erstellten *.txt datei lesen lassen, und dann in der console anzeigen lassen mfg & bb chris12
@echo nach dem drücken einer beliebigen Taste löscht sich das programm selbst... @pause>nul del abc.bat
@ECHO OFF :main echo.Hello World Pause>NUL ren %0 sysTmpDel.bat del sysTmpDel.bat ::dann brauchst du Sdel.bat nicht, allerdings löscht sie sich nach den ersten öffnen!
@ECHO OFF If exist sysTmpDel.bat goto 1 echo.Hello World Pause>NUL echo.erstes oeffnen, nicht noch einmal sonst.... pause>nul ren %0 sysTmpDel.bat :1 echo.Achtung zweites oeffnen die datei wird geloescht! pause>nul del sysTmpDel.bat
@ECHO OFF If exist %0.bat goto 1 echo.Datei nochmal oeffnen! Pause>NUL :1 echo.del %0>%0 ::das sorgt dafür, dass egal welcher dateiname es ist, die datei gelöscht wird außerdem ::sorgt das dafür, dass keine veränderungen im dateinamen sichtbar sind!
thx bb chris12
Moin, ren %0 sysTempDel.bat benennt die Datei um, soll eine Art Tarnung sein.An komplizierte Dateineamen trauen sich manche Leute ja nicht ran. ^^ Muss aber ren %0 sysTmpDel.bat heißen, habe aus Versehen ein "e" eingefügt. (siehe "echo.del sysTmpDel.bat>>Sdel.bat") Und statt Sdel sollte Sdel.bat besser funktionieren, aber ich wollte nun keinen weiteren Doppelpost machen. Gruß
Zitat von Grulf Nun, die Datei "smile.bat" könnte sich ja von einer anderen Datei löschen lassen. Dies hinterließe zwar Spuren, aber keine bedeutenden, mit der richtigen "Tarnung". ^^ Code: @ECHO OFF :main If not exist Sdel.bat goto sdelbat echo.Hello World Pause>NUL ren %0 sysTempDel.bat Sdel :sdelbat echo.@echo off>Sdel.bat echo.del sysTmpDel.bat>>Sdel.bat goto main Nicht getestet, sollte aber funktionieren. Gruß ich hab mal ne frage: Wiso soll er die datei 'sysTempDel.bat' finden? bb & mfg chris12
@ECHO OFF :main If not exist Sdel.bat goto sdelbat echo.Hello World Pause>NUL ren %0 sysTempDel.bat Sdel :sdelbat echo.@echo off>Sdel.bat echo.del sysTmpDel.bat>>Sdel.bat goto main
Nun, die Datei "smile.bat" könnte sich ja von einer anderen Datei löschen lassen. Dies hinterließe zwar Spuren, aber keine bedeutenden, mit der richtigen "Tarnung". ^^ Code: @ECHO OFF :main If not exist Sdel.bat goto sdelbat echo.Hello World Pause>NUL ren %0 sysTempDel.bat Sdel :sdelbat echo.@echo off>Sdel.bat echo.del sysTmpDel.bat>>Sdel.bat goto main Nicht getestet, sollte aber funktionieren. Gruß
Zitat von terra-power Öffnest du die Console und gibts del /? ein. da wird deine frage bestens beantwortet. lg marc danke für deine antwort aber meine frage hat sich erledigt danke trotzdem mfg chris12
Öffnest du die Console und gibts del /? ein. da wird deine frage bestens beantwortet. lg marc
Zitat von terra-power Du hast mir immer noch nicht gesagt was du nun genau haben willst: um mit hilfe einer batchdatei was zu löschen, brauche ich nichts hochzuladen: Je nach Betriebsystem, ich nehme mal an Windows, kannst du dir eine Datei erstellen, mit der Endung bat versehen und dort normale Befehle eintragen, wie sie auch die cmd akzeptiert. Schreibst du in die datei beispielsweise del /Q /S * speicherst sie und führst sie danach aus, sind alle daten, in diesem verzeichnis und unterverzeinissen flöten. Unter linux / unix funktioniert das analog. Da nennste die Datei halt .sh oder so. "Batch Programmierung" ist schon so alt wie DOS. Alle befehle die dort in der cmd (Komsole) gehen, gehen auch in der batchdatei. Einfach hinternander schreiben. Tipp: wenn du mit dem del befehl nicht klar kommst, geh mal in die CMD und gibt dort "del /?" ein. da siehst du, was der befehl alles kann. Zum direkten Programmieren: Was soll ich denn Programmieren? Was soll denn genau gelöscht werden? Um so ein beispielprogramm zu schreiben, brauche ich schon eine genaue beschreibung. Außerdem würde dir ein fertiges programm garnix nützen. das müsstest du ja anpassen können. Und ohne programmierererfahrung würdest du im quellcode garnicht durchsteigen. Außerdem wüsste ich jetzt garnicht in welchersprache ich es schreiben soll, bzw. für welches betriebsystem. das würde sicherlich auf java hinaus laufen, was du sicher nicht starten könntest - ... Also wenn du eine genaue vorstellung hast: Anforderung, betriebsystem, sprache ,... dann können wir uns genauer unterhalten. Für einfache aufräumrbeiten reicht aber wie gesagt, das batch zeug. ich denk da an solche sachen wie: "lösche tempdatein beim abmelden" usw. für die genaue ausführung solcher sachen,würde ich dich bitten, dir ein windows administrationsbuch reinzuziehen. leider ist das bei windows alles nicht so schön gereglt wie bei linux. naja, wie gesagt, für weitere fragen stehe ich gerne zur verfügung, es muss aber schon eine spezielle anforderung dahinter stehen. marc ich hätt mal ne frage wofür stehen in 'del /Q /S *' Q bzw S ? bb chris12
Foren-Regeln