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

Aus einem String best. Zeichen auslesen und ersetzen

Frage Entwicklung Batch & Shell

Mitglied: Dino2002

Dino2002 (Level 1) - Jetzt verbinden

31.01.2009, aktualisiert 11:03 Uhr, 9246 Aufrufe, 6 Kommentare

Ich möchte mit Hilfe einer Batch Datei verschiedene Dateien über das Netzwerk kopieren. Im ersten Schritt werden die Dateien innerhalb von Windows basierten Systemen übertragen und anschließend an Linux Systeme. Sobald die Batch eine zu übertragende Datei findet erstellt sie ein Kopier-Script. Hierfür wird von der übertragenen Datei der komplette Pfad in einer Variablen zwischengespeichert. Der Pfad zu der Datei beinhaltet wie im Windows Umfeld bekannt mehrere backslashe "\" die unbedingt in normales slash "/" umgewandelt werden müssen um den Pfad ebenfalls für Linux Systeme lesbar zu machen.
Aus dem kleinen Auszug der Batch wird der komplette Pfad z.B. "\\hostname\Freigabe\OrdnerA\Unterordner" der zu kopierenden Datei in "ORG_DATEI_PFAD" geschrieben und anschließend um die ersten 19 Zeichen gekürzt. Nun möchte ich die "\" aus dem neuen Pfad durch "/" ersetzten. Der Pfad zu der kopierenden Datei ist fast immer unterschiedlich!
Vielen Dank in Voraus

Mit freundlichen Grüßen

Dino

SET "FILE_PATH=%%~dpi"
SET "NEW_FOLDER_PATH=!FILE_PATH:~19,250!"
Mitglied: 60730
31.01.2009 um 11:21 Uhr
Servus und (gerade noch so) willkommen.

Batch suchen und ersetzen in verbindung mit Bastlaund Biber - hatten wir erst letztes Wochenende wieder...

Ernsthaft - schau nach den fett markierten Wörtern und du wirst fündig, egal, was du ersetzen willst - dafür gibts wirklich sehr sehr viele gelöste und dokumentierte Beiträge.

Gruß
Bitte warten ..
Mitglied: bastla
31.01.2009 um 15:28 Uhr
@TimoBeil: Du bist aber wieder streng heute - dabei geht's ja nur um eine Zeile:
SET "NEW_FOLDER_PATH=!NEW_FOLDER_PATH:\=/!"
Da ich nun schon mal dabei bin ...

@Dino2002: Es wird sich zwar kaum wirklich auswirken (Pfadlängen von 270 Zeichen bleiben Dir hoffentlich erspart ), daher nur der Ordnung halber:

Gemeint ist Deine zweite gepostete Batchzeile vermutlich doch eher so:
SET "NEW_FOLDER_PATH=!FILE_PATH:~19!"
Richtig?

Grüße
bastla
Bitte warten ..
Mitglied: Biber
31.01.2009 um 16:55 Uhr
Moin Dino2002, T-Mo und bastla,

bin versucht zu schreiben:
01.
SET "FILE_PATH=%%~dpi" 
02.
SET "NEW_FOLDER_PATH=%FILE_PATH:~19%"
,,, wäre des Guten bereits genug.
Ich seh nix, was DelayedExpansion erfordern würde.

Grüße
Biber
Bitte warten ..
Mitglied: bastla
31.01.2009 um 16:59 Uhr
@Biber
Ich seh nix
Im Hinblick auf die Formulierung "kleinen Auszug der Batch" gehe ich davon aus, dass da doch noch mehr sein könnte (sehen kann ich allerdings auch nix ) ...

Grüße
bastla
Bitte warten ..
Mitglied: 60730
31.01.2009 um 17:14 Uhr
Zitat von bastla:
@TimoBeil: Du bist aber wieder streng heute - dabei geht's ja nur um eine Zeile:
Grüße
bastla

@bastla: Genau um diese eine Zeile - am besten die erste gings mir ja.
Und wenn dann der Autor dann auch noch schlecht versucht, den Thomas Mann Schreibstil -mit ohne Absätze zu verfassen *ärgs*...

Wie war das denn noch gleich - mit dem Suchen und Ersetzen Fred - den solltest du schon beginnen, sonst mach ich das noch

Ps: Ich "durfte" heute mal wieder Server umräumen und bin vielleicht auch deswegen etwas Frl. Rottenmeier
Ich bemühe mich weiterhin, wenn max. nur Frl. Rottenmeier und nicht Herr Rottweiler zu sein

Gruß

(edit) ach jetzt hab ichs ... oder wie aus einem vertipper aus "noch" "nich" werden kann...
und da mich und meine Abneigung, das Wort "NICHT" zu verhohnepiepen nicht jeder kennt ;(
War keine Absicht
Bitte warten ..
Mitglied: Dino2002
02.02.2009 um 14:15 Uhr
Hallo zusammen,

vielen Dank für eure schnelle Hilfe! Meine Batch ist inzwischen sehr lang geworden und sicherlich nicht vorbildlich programmiert, zurecht gerückt und dokumentiert. Vor diesem Elend wollte ich lediglich die Forum Leser bewahren und vielleicht die eine oder andere Verwirrung ausschließen. Kurz und knapp ist manchmal mehr.

Vielen Dank noch mal

Viele Grüße
Dino
Bitte warten ..
Neuester Wissensbeitrag
Microsoft

Lizenzwiederverkauf und seine Tücken

(5)

Erfahrungsbericht von DerWoWusste zum Thema Microsoft ...

Ähnliche Inhalte
Batch & Shell
2 String aus PDF auslesen und diesen zum Umbenamsen benutzen (8)

Frage von ingo101 zum Thema Batch & Shell ...

Batch & Shell
gelöst Poweshell Script soll String ersetzen und die leere Zeile löschen (4)

Frage von Mars123 zum Thema Batch & Shell ...

Batch & Shell
gelöst Powershell String Suchen mit Wildcard und Ersetzen (6)

Frage von herrmanndominic zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Netzwerk
Windows 10 RDP geht nicht (16)

Frage von Fiasko zum Thema Windows Netzwerk ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

Microsoft Office
Keine Updates für Office 2016 (13)

Frage von Motte990 zum Thema Microsoft Office ...