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
GELÖST

3 Probleme mit batch-dateien

Frage Entwicklung Batch & Shell

Mitglied: 21360

21360 (Level 1)

08.12.2005, aktualisiert 21.01.2010, 5987 Aufrufe, 9 Kommentare

1. Platzhalter eingeben 2. Text-Datei schreiben 3. Text-Datei wieder auslesen

Also, mein gößtes Problem ist folgendes: Ich will das der User eine Aufforderung erhält, den Parameter %patha% einzugeben

set /P %patha%="BITTE EINGEBEN: "

zur Eingabe kommt es dann auch, aber wenn ich dann folgendes mache:

md %patha%\Patch

erstellt die batch datei immer im aktuellen Verzeichnis den Ordner Patch...auch eine AUsgabe klappt nicht, das heißt der Parameter ist leer und ich weiß nicht weiter.

Mein 2. Problem ist, das ich diesen Pfad für spätere Deinstallation wegschreiben und später wieder auslesen will, aber keine Ahnung habe ob das überhaupt möglich ist.

Kann mir jemand helfen bzw. sagen ob das mit batch möglich ist, und wenn nein sagen mit was es wie geht?
Mitglied: superboh
08.12.2005 um 19:58 Uhr
Hi,

beim Setzen der Variable mit SET darfst Du den Variablennamen nicht in %-Zeichen einschliessen, nur bei der Verwendung der Variablen dann.

Also SET /P TEXT="BITTE EINGEBEN: "

aber ECHO %TEXT%


Was meinst Du mit "wegschreiben"? Wohin schreiben?
Und was ist das 3. Problem?

Gruss,
Thomas
Bitte warten ..
Mitglied: 21360
08.12.2005 um 21:02 Uhr
Mit wegschreiben meine ich das der Inhalt der Variable z.B. in die Pfad.txt geschrieben wird, sodass bei ich Sie bei einer deinstallation wieder auslesen (3. Problem) kann (So wird eine 2. Eingabe vermieden)

Ach ja, und es fällt mir gerade ein: Kann ich mit der Batch-Datei auch einen Link zu einer anderen Datei erstellen?

Aber der 1. Hinweis hat schon gut geholfen...schonmal danke
Bitte warten ..
Mitglied: superboh
09.12.2005 um 09:48 Uhr
Hi,

wegschreiben:
echo %TEXT% > C:\tempfile.txt

einlesen:
set /p Verz=C:\tempfile.txt

Eine Verknüpfung anlegen kann man aus einer Batchdatei mit Boardmitteln nicht. Dazu braucht man entweder ein kleines VBS-Script oder ein Zusatztool wie MakeScut.

Gruss,
Thomas
Bitte warten ..
Mitglied: 21360
09.12.2005 um 19:46 Uhr
Das Wegschreiben funktioniert. Nur das Einlesen nicht. Sicher das der Befehl richtig ist?

Ich hab das wie folgt geschrieben:

set /P patha=C:\Patch\patha.txt
set /P pathb=C:\Patch\pathb.txt

Die Dateien bestehen und haben den korrekten Inhalt

versuche ich jetzt folgendes:

del patha\readme.txt

versucht er im aktellen Verzeichnis zu löschen
Bitte warten ..
Mitglied: Biber
09.12.2005 um 21:43 Uhr
Moin Arieavariel,

der Befehl "set /P", wie Thomas ihn vorgeturnt hat, ist schon richtig, wenn Du dann eine Benutzereingabe entgegennimmst.
So, wie Du ihn unten verwenden willst, willst Du ja die Werte patha/pathb schon setzen, wenn ich es richtig sehe?
Dann also das "/P" weglassen. Siehe Hilfe zu "Set" oder am Prompt "set /?".

Andere Fehlermöglichkeit ist, dass Variablen in Prozentzeichen eingeschlossen sein müssen, wenn sie als Variablen erkannt werden sollen.
also: del %patha%\readme.txt

HTH Biber
Bitte warten ..
Mitglied: 21360
10.12.2005 um 11:30 Uhr
hmmmm...danke...ich probiers mal aus...melde mich heute nochmal...denke das kanns schon gewesen sein
Bitte warten ..
Mitglied: 21360
10.12.2005 um 14:31 Uhr
Also, das ich das /P weglasse klappt nicht...und die %-Zeichen hatte ich schon eingetragen nur hier leider vergessen. Und der /? -Befehl hat nicht geholfen...
Bitte warten ..
Mitglied: Biber
10.12.2005 um 15:14 Uhr
Sorry, Arieavariel,

ich habe vermutlich auch missverstanden, was Du eigentlich versuchst. Mein Fehler.

Also, nochmal in langsam:
Der "Set /P"-Befehl, wie er eigentlich gedacht ist, nimmt einen Benutzerinput entgegen.
Das heißt, eine Eingabe am Prompt von
set /P patha=C:\Patch\patha.txt
bewirkt, dass "C:\Patch\patha.txt" als "Eingabe-Aufforderung" angezeigt wird und der Benutzer etwas über die Tastatur eingeben soll.

Du willst aber den Input nicht über Tastatur und Benutzer, sondern aus einer Datei.
Das bewirkst Du mit dem Kleiner-Zeichen "<", was dann sinngemäß heißt "Hole Dir den Input aus dieser Quelle".

Somit wäre richtig:
set /P patha=&ltC:\Patch\patha.txt

Danach kannst Du prüfen, ob die Variable %patha% richtig gesetzt ist mit
@echo Variable Patha ist: [%patha%]
und auch Dein "type %patha%\ReadMe.txt" machen oder was immer Du vorhast.
Sorry für das Missverständnis.
Grüße Biber
Bitte warten ..
Mitglied: 21360
13.12.2005 um 17:48 Uhr
soooo...hatte endlich Zeit zum Ausprobieren...

klappt alles perfekt

danke für die schnelle und gründliche Hilfe^^
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(7)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
gelöst Per Batch Dateien in einen Ordner - ext. Festplatte übertragen (2)

Frage von tocksick zum Thema Batch & Shell ...

Windows Server
Zuordnung von Netzlaufwerken mit Hilfe von Batch-Dateien (4)

Frage von doc-jochim zum Thema Windows Server ...

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 ...

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

Frage von Haures zum Thema Windows Server ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...

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

Frage von Unwichtig zum Thema Netzwerkmanagement ...