Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Benötigte Daten an Batch anhängen oder konvertieren

Frage Entwicklung Batch & Shell

Mitglied: yves-sascha

yves-sascha (Level 1) - Jetzt verbinden

02.02.2011 um 22:40 Uhr, 3612 Aufrufe, 18 Kommentare

Hallo liebe Admins

Kann man eine Batch mit einem Ordner der diverse Dateien enthält konvertieren?

Ich möchte damit erreichen, dass ich am Schluss eine Datei habe, beim starten dieser Datei, soll die Batch ausgeführt werden.
In der Batch werden Variablen gesetzt, welche ich in ein txt speichern möchte. Zusätzlich wird während des laufens eine weitere Batch gestartet.
Diese zwei Dateien (txt & zweite Batch) möchte ich an die erste anhängen, so dass ich nur eine Datei habe, und nicht 3...

Ist so etwas in die Richtung möglich?


Vielen Dank schon jetzt für eure Antworten.
Yves
Mitglied: 60730
02.02.2011 um 22:54 Uhr
Hallo und willkommen,

es ist jetzt 22:50 und wahrscheinlich bist du noch viel früher als ich aufgestanden

Denn so ganz schlau, was du da willst, werde ich nicht.

Kann man eine Batch mit einem Ordner der diverse Dateien enthält konvertieren?
  • Da hätte ich spontan an zippen oder in ein PDF packen gedacht...
Ich möchte damit erreichen, dass ich am Schluss eine Datei habe, beim starten dieser Datei, soll die Batch ausgeführt werden.
  • Streng genommen ist eine Batch eine Stapelverarbeitungsdatei und wozu willst du eine "Stapel" Datei haben, um damit eine Batch zu starten?
Ist so etwas in die Richtung möglich?
  • Morgen wieder, wenn die Kaffemaschine aktiv ist und du dein Vorhaben etwas konkreter beschrieben hast - sicherlich.

Gruß
Bitte warten ..
Mitglied: bastla
02.02.2011 um 22:58 Uhr
Hallo yves-sascha und willkommen im Forum!

Das Ganze hört sich ziemlich abenteuerlich an - wozu soll denn die ganze Aktion gut sein? So richtig kann ich mir auch den Ablauf noch nicht vorstellen ...

Was soll denn in die Textdatei, und wozu braucht es einen zweiten Batch?

Grüße
bastla
Bitte warten ..
Mitglied: 90776
02.02.2011 um 23:50 Uhr
hallo...

ich glaube du willst die Batch

compilieren, d.h eine Batch Datei mit Diversen anderen Files in eine EXE Paken,

dafür kann ich dir BAT to EXE empfehlen

Dabei wird beim start der exe die batch und die anderen Files in einen ordner entpackt und gestartet...

Grüsse
Switcher
Bitte warten ..
Mitglied: 60730
03.02.2011 um 00:33 Uhr
N8 Switcher,

du solltest lieber ....

  • warten bis sich der TO wieder meldet
  • mal echte Bohnen in die Maschine schütten, aber Kaffee keine Kakao Bohnen...

  • Bat2exe will er sicherlich nicht und das bringts auch nicht..
  • Schau mal in meine erste Zeile mit nem Punkt und dann gurgel mal nach sfx
Aber wie getippt, ob er das wirklich will - soll er selber schreiben...
Wir sind doch nicht bei Rate mal mit Rosenthal

Gruß
Bitte warten ..
Mitglied: 90776
03.02.2011 um 00:54 Uhr
@Timo

ok Warten wäre eine Alternative, aber
ich hab den Text 5 mal durchgelesen und "denke" dass er das will

was sfx ist weiss ich schon xD
aber ein sfx archiv kann doch keien Batch starten, oder doch?

Edit
Habs grad mit Winrar getestet... und ich finde es ist sehr viel einfach mit Bat2Exe zu arbeiten, man hat zwar nicht so viele Optionen, aber es ist hantlicher und schneller finde ich
Edit

und Bat2Exe find ich gar nicht schlecht so auf die schnelle... was hast du dagegen? bzw. welches Programm findest du besser?

und zum Raten... ich finde nach Mitternacht kann man auch Sachen machen, die man normalerweise nicht tut...

aber trotzdem Danke

Grüsse
Bitte warten ..
Mitglied: 60730
03.02.2011 um 01:20 Uhr
[OT]
Zitat von 90776:
@Timo

ok Warten wäre eine Alternative, aber

ABER?

Wenn Alternative von Alternator kommt, dann hast du es geschafft i am loaded Keine Bohnen in die Maschine getutet?

Habs grad mit Winrar getestet... und ich finde es ist sehr viel einfach mit Bat2Exe zu arbeiten, man hat zwar nicht so viele Optionen, aber es ist hantlicher und schneller finde ich
  • Hantlicher?
Kommt hantlicher von Hanteln oder von handgerecht? So wie Herren von Herrlich und Dämlich von ?

Der McLaren MP4 vom Ayrton Senna ist auch schneller als mein Mopped, aber ob ich mit dem genauso schnell auf der Arbeit bin wie mit der ZXR14?
[/OT]
Bat2exe ist eine ganz Andreaskreuzige Baustelle

N8
Bitte warten ..
Mitglied: Florian.Sauber
03.02.2011 um 01:58 Uhr
Moin,

[OT]
na ja T-Mo, bei
Kann man eine Batch mit einem Ordner der diverse Dateien enthält konvertieren?
  • Da hätte ich spontan an zippen oder in ein PDF packen gedacht...
Hast de ja auch tiefer in die Kristallkugel blicken müssen

@90776
aber ein sfx archiv kann doch keien Batch starten, oder doch?
Warum nicht?! Kommt halt darauf an, welche ArchivierungsSW man verwendet.
und Bat2Exe find ich gar nicht schlecht so auf die schnelle... was hast du dagegen? bzw. welches Programm findest du besser?
Na ja, wo anfangen: SFX modules for installers für 7z, Windows-Bordmittel(IExpress), oder jedes andere Tool, welches keine Shareware ist.

Kommt halt immer darauf an, wofür mans braucht. Aber darüber klärt uns der TO ja morgen auf...

LG Florian
Bitte warten ..
Mitglied: 90776
03.02.2011 um 02:28 Uhr
ach timo du erinnerst mich wirklich an Dr. House (passen zu deinem profilbild

ein rechtschreibefehler darf doch mal vorkommen, oder nicht?

@Florian

natürlich habt ihr beide Recht mit Bat2exe, aber es ist trotzdem sehr simpel und einfach zu bedienen und reicht in den meisten Fällen ja auch

@Die alten Hasen

und ausserdem glaube ich bei der Quallität der Frage, dass man es nicht zu kompliziert machen sollte

und NATÜRLICH seid ihr beiden hier die "alten" Hasen und wisst es ,aus Erfahrung, nunmal besser als ich... ist ja aber auch nichts schlimmes

Grüsse
Bitte warten ..
Mitglied: yves-sascha
03.02.2011 um 06:32 Uhr
Schönen guten morgen =)

@90776
vielen dank für deine Antwort
Bat2exe hab ich mir auch schon angeguckt, ich habe es jedoch damit nicht so hingekrigt wie ich das wolte.

Okke, ich probiere meine Problemstellung etwas zu verdeutlichen.
Während des laufens der Batch, wird der user diverse dinge abgefragt, diese variablen werden dann in eine txt gespeichert. Hatt den effekt, das man zu einem späteren Zeitpunkt wenn die Batch erneut gestartet wird nicht wieder alles abgefragt wird, sondern aus der txt ausgelesen, und nur bei bedarf geändert.

Ich möchte also die batch und die txt so zusammen packen, dass ich eigentlich nur die Batch sehe, diese jedoch auf die txt zugreifen kann...

Die zweite batch kann man forerst vernachläsigen


Vielen dank für weitere konstruktive Antworten.
Yves
Bitte warten ..
Mitglied: bastla
03.02.2011 um 10:00 Uhr
Hallo yves-sascha!

Etwas zum Spielen:
01.
@echo off & setlocal 
02.
for /f "delims=" %%i in ('findstr /b "__" "%~f0"') do ( 
03.
    set "%%i" 
04.
    echo %%i 
05.
06.
echo\ 
07.
set /p __Wert1=Wert 1 eingeben (Enter=Wert "%__Wert1%" behalten):  
08.
set /p __Wert2=Wert 2 eingeben (Enter=Wert "%__Wert2%" behalten):  
09.
set /p __Wert3=Wert 3 eingeben (Enter=Wert "%__Wert3%" behalten):  
10.
echo Batch verarbeitet %__Wert1% mit %__Wert2% und %__Wert3% 
11.
ping -n 2 127.0.0.1 >nul 
12.
echo ... und ist damit jetzt fertig 
13.
pause 
14.
:Beenden 
15.
findstr /v /b "__" "%~f0">%temp%\B1.tmp 
16.
>%temp%\B2.tmp 2>nul set __  
17.
copy /b %temp%\B1.tmp + %temp%\B2.tmp "%~f0" >nul & del %temp%\B?.tmp & goto :eof 
18.
:Daten 
19.
 
Anmerkung: Bitte beachten, dass es am Ende der letzten Zeile eine Zeilenschaltung geben muss ...

Grüße
bastla
Bitte warten ..
Mitglied: bankaifan
03.02.2011 um 10:17 Uhr
Moin Yves-Sascha,

mir fällt da gerade noch eine Möglichkeit ein, die funktionieren könnte.

ADS.

Aber ich weiß, dass das Thema hier im Forum nicht so gerne gesehen ist. Wenn du willst erklär ich dir das über PM.

Viele Grüße

Bankaifan
Bitte warten ..
Mitglied: Biber
03.02.2011 um 10:53 Uhr
Moin bastla,

würde ich genauso angehen - als Pessimist würde ich allerdings diese erhaltenswerten Variablennamen bis zur vorletzten Stelle angeben.

Also statt alle Variablen beginnend mit 2 Unterstrichen ("__") wegzuschreiben wirklich nur alle Variablen "__Wert" lesen/schreiben,
wenn ich %__Wert1%, %__Wert2%, %__Wert3% meine.

Weil.... ich habe es (auch hier im Forum) schon mehrfach gesehen, dass irgendwelche Variablen mit Präfix "_" gesetzt werden, weil....
"...das macht ja keiner ausser mir, da gibt es kein Kollisionsrisiko."

@bankaifan
Da kannst es natürlich mit Streams machen... nur...
Wenn bei mir bei einem Routine-Scan eine Batch-Datei auffällig wird, weil da noch irgendwas Verstecktes dranhängt - die könnte schnell aus dem Netzwerk fliegen.

Bätches sind doch Gebrauchs-Skriptchen - die sind per se lesbar, ungeschützt und unkompiliert , weil
  • da nix nobelpreisverdächtiges drin ist und
  • auch mal Anpassungen vorgenommen werden müssen
  • und weil Batchdateien ja auch jeder Heinz und jede Bärbel anschauen kann, soll und darf, bevor er/sie das auf den eigenen Rechner loslässt.

Von daher halte so eine Lösung für ... nicht erstrebenswert - ich möchte nicht, das solche Batches-mit-Streams durch meine Domänen geistern.

Wenn du von einem Kumpel eine Batchdatei geschenkt bekommst und feststellst,
da klebt so ein unsichtbarer Tarnbeutel dran - wie verhältst du dich?

Grüße
Biber
Bitte warten ..
Mitglied: jeb-the-batcher
03.02.2011 um 10:57 Uhr
Guten morgen,

für mich hört sich das so an als wenn eine sich selbst veränderde Batchdatei eine Lösung wäre.
So wie bastla das auch schon angedeutet hat.

Dann könnte man einfach die gesammelten Werte (hoffentlich mit Nutzwert) am Ende der Batchdatei ablegen
und beim nächsten starten als default verwenden.

Um die dann zu ändern muss man etwas in der Trickkiste graben.
Allerdings hat Thuringian praktisch genau dieses hier gelöst
http://www.lingubender.com/forum/viewtopic.php?f=12&t=886&sid=c ...

jeb
Bitte warten ..
Mitglied: bankaifan
03.02.2011 um 11:11 Uhr
Hast recht Biber :D

Naja. Ich kenn niemanden der auch nur ansatzweise eine Ahnung von Batchscripting hat

Aber da hätte ich paar fragen zu dem Code-Snippet von Bastla.

01.
for /f "delims=" %%i in ('findstr /b "__" "%~f0"') do (
Was macht das? Ich lasse eine For-Schleiche durch die Fundergebnisse von "___" in "%~f0" laufen. aber was ist diese " %~f0"?

01.
 echo\ 


Wozu hier der Backslash?

01.
>%temp%\B2.tmp 2>nul set __ 
Das versteh ich auch nicht so wirklich :P
01.
copy /b %temp%\B1.tmp + %temp%\B2.tmp "%~f0" >nul & del %temp%\B?.tmp & goto :eof
Was bewirkt das "?" beim löschen?

Hoffe ihr könnt mir das erklären

Bankaifan
Bitte warten ..
Mitglied: 60730
03.02.2011 um 12:14 Uhr
Moin,

[OT]
wer sich den ganzen Fredfeuerstein noch nicht durchgelesen hat und nicht versteht, warum ich gestern completly loaded war...

der sollte sich mal in die lage des TO versetzen und meine Vorliebe für Frederickes die einen zweistelligen Anhang haben - kennen.

Was mich hierher bewogen hat, war das gut gestellte Fragen innerhalb 5-7 Antworten gelöst wurden - weniger ist mehr.

Diese ganze schick mir ne PM, erklärbär es dem Trittbrettfahrer -finde ich suboptimalen Mist.
[/OT]

Gruß
Bitte warten ..
Mitglied: bastla
03.02.2011 um 13:43 Uhr
Hallo bankaifan!

Eine Batchdatei "kennt" sich selbst als %0 - allerdings entspricht das dem beim Aufruf verwendeten Namen: Wenn eine "doit.cmd" nur per "doit" aufgerufen wird, enthält %0 eben auch nur "doit". Die Schreibweise "%~f0" erzeugt im Gegensatz dazu immer den vollen Pfad mit allem Drum & Dran - damit findet sich die Batchdatei also ganz sicher selbst. Die Schleife wird benötigt, um alle vorher am Ende des Batches angefügten Variablen wieder herzustellen.
Wenn Du "echo\" nicht magst, verwende (das gebräuchlichere) "echo." (oder "echo,", "echo:", "echo+", ...)
>%temp%\B2.tmp 2>nul set __
kannst Du auch so schreiben:
set __>%temp%\B2.tmp 2>nul
damit wird einfach die Liste aller Variablen, die mit "__" beginnen sowie der zugewiesenen Werte in die Temp-Datei geschrieben (bzw, sollte es gar keine passenden Variablen geben, die fällige Fehlermeldung unterdrückt).
Was bewirkt das "?" beim löschen?
Als Wildcard sorgt es dafür, dass alle Dateien namens "B" + maximal ein weiteres Zeichen + ".tmp" gelöscht werden (ok, die zwei Dateien hätte ich auch ausschreiben können ).

Grüße
bastla
Bitte warten ..
Mitglied: bastla
03.02.2011 um 13:45 Uhr
@Biber
War ja auch ausdrücklich als "Spielzeug" deklariert (und kommentiert ) - aber immerhin habe ich zwei "_" an den Anfang gesetzt ...

Grüße
bastla
Bitte warten ..
Mitglied: bankaifan
04.02.2011 um 08:24 Uhr
Danke Bastla :D

Sehr schön erklärt

Gruß

Bankaifan
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Server
gelöst SQL-Tabelle portieren und dabei Daten konvertieren (1)

Frage von menace zum Thema Server ...

Batch & Shell
gelöst BATCH: Daten aus Textdatei auslesen und in neue Textdatei separieren (9)

Frage von Manuel1234 zum Thema Batch & Shell ...

Batch & Shell
Batch zum bearbeiten mehrerer CSV (2)

Frage von Matzus87 zum Thema Batch & Shell ...

Batch & Shell
Batch-Variable nach Stichworten aus TXT Datei durchsuchen (3)

Frage von Markus5579 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...