Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBASICBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDomain RegistrierungDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetiOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal & DelphiPerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige PeripheriegeräteSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideoViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows NetzwerkWindows PhoneWindows ServerWindows SystemdateienWindows ToolsWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
Weniger Werbung?
Cover IT-Administrator
Mit dem Heftschwerpunkt "IT-Support & Troubleshooting" startet das IT-Administrator Magazin ins neue Jahr. Dabei erfahren Sie, auf welchem Weg Sie Ihr eigenes Ticket-System mit osTicket einrichten und die Windows Troubleshooting Platform für die Fehlersuche nutzen. Außerdem lesen Sie, wie die Performance-Analyse unter Linux mit collectd, serverstats, iostat und sar funktioniert und wie Sie Druckproblemen im Netzwerk Herr werden. In einem großen Vergleichstest nimmt die Redaktion ...
GELÖST

Unterstrich und Blanks aus Dateinamen entfernen

Frage Entwicklung Batch & Shell

Mitglied: Loonie

Loonie (Level 1) - Jetzt verbinden

29.11.2007, aktualisiert 30.11.2007, 8759 Aufrufe, 6 Kommentare

Hallo,

ich möchte über das Kontextmenu eine Datei per FTP an einen Großrechner versenden. Soweit kein Problem, Ablage der Batchdateien im SendTo-Verzeichnis. Dabei wird der Dateiname auf dem Host aus den ersten 7 Stellen des lokalen Dateinamens gebildet. Dort sind nur 8 Zeichen pro Stufe zugelassen. Die erste Stelle jeder Stufe darf keine Zahl sein, daher nehm ich nur die ersten sieben und setze ein F davor. So weit so gut...

Allerdings sind im Dateinamen auf dem Host bestimmte Zeichen nicht zugelassen, z.B. Blanks und Unterstriche. Wie kann ich aus der Datei 123_test.txt --> 123test machen, also aus der Variablen %myDateik% Blank und Unterstrich entfernen?

01.
set mypfad=%temp% 
02.
set myftpfile=%mypfad%\download1.txt 
03.
set myuser=User123 
04.
set mypassword=topsecret 
05.
set "myDatei=%~n1" 
06.
set "myDateik=%myDatei:~0,7%" 
07.
echo %myuser% > %myftpfile% 
08.
echo %mypassword% >> %myftpfile% 
09.
echo quote site sbd=(ibm-273,iso8859-1) >> %myftpfile% 
10.
echo put %1 '%myuser%.FTPANSI.F%myDateik%' >> %myftpfile% 
11.
echo quit >> %myftpfile% 
12.
ftp -s:%myftpfile% host0815 
13.
del %myftpfile%

Was auch noch nicht funktioniert ist, wenn der Dateiname kürzer als 7 Stellen ist???

Danke und Gruß

Thomas
Mitglied: bastla
29.11.2007 um 15:29 Uhr
Hallo Loonie!

Blank und Unterstrich entfernen?
Du kannst die "Ersetzen"-Funktionalität des "set"-Befehles (siehe "set /?") dazu verwenden:
01.
... 
02.
::Blanks entfernen 
03.
set "myDateik=%myDateik: =%" 
04.
::Underscores entfernen 
05.
set "myDateik=%myDateik:_=%"

Was auch noch nicht funktioniert ist, wenn der Dateiname kürzer als 7 Stellen ist?
Wie definierst Du "nicht funktioniert"?

Grüße
bastla
Bitte warten ..
Mitglied: Biber
29.11.2007 um 16:34 Uhr
Moin bastla,

er meinte bestimmt, wenn der verbleibende Dateiname noch 8 Zeichen lang ist und er dann ein "F" vor den Namen setzt, dann kann der FTP-Transfer nicht klappen.
Weil "F"+8 Zeichen = 9 Zeichen --> bei max. 8 Zeichen je Pointerstufe auf dem Host->#TILT#.

Vielleicht sollte man/frau den "verbleibenden Namen" ähnlich wie oben nochmals kürzen?
01.
... echo put %1 '%myuser%.FTPANSI.F%myDateik:~0,6%'  
02.
...

Grüße
Biber
Bitte warten ..
Mitglied: bastla
29.11.2007 um 16:44 Uhr
@Biber
... der verbleibende Dateiname noch 8 Zeichen lang ist ...
Da kann ich jetzt nicht mehr folgen - wenn der Dateiname bereits auf 7 Stellen gekürzt und daraus uU noch Blanks und Underscores entfernt wurden ...

Ob ein Kürzen außerdem wirklich Abhilfe schafft, wenn das Problem als "... wenn der Dateiname kürzer als 7 Stellen ist?" formuliert wurde?

Grüße
bastla
Bitte warten ..
Mitglied: Biber
29.11.2007 um 16:47 Uhr
@bastla

wenn der Dateiname bereits auf 7 Stellen gekürzt wurde..
Wo wird er denn auf 7 Zeichen gekürzt?

Von 0 bis 7 sind... na??

Grüße
Biber
Bitte warten ..
Mitglied: bastla
29.11.2007 um 16:54 Uhr
@Biber
set "myDateik=%myDatei:~0,7%"
Und ich hatte die 0 immer als Stelle, nach welcher der Teilstring entnommen wird, interpretiert (und auch noch das gewünschte Ergebnis erhalten - die nächste MS-Gemeinheit ) ...

Grüße
bastla
Bitte warten ..
Mitglied: Loonie
30.11.2007 um 21:28 Uhr
Hey Biber, hey Bastla,

vielen Dank für die schnelle Antwort.

set "myDateik=%myDatei:~0,7%" nimmt die ersten sieben Stellen des Dateinamens. Daran lags also nicht. Das Problem ist jetzt aber auch nicht mehr aufgetreten, keine Ahnung warum oder besser warum nicht

Also vielen Dank nochmal...Schönes Wochenende

Thomas
Bitte warten ..
Neuester Wissensbeitrag
Batch & Shell
GELÖST Leerzeichen aus Dateinamen entfernen (3)

Frage von noob-x zum Thema Batch & Shell ...

Batch & Shell
GELÖST Im Dateinamen den ERSTEN Unterstrich durch Punkt ersetzen (immer drittes Zeichen) (9)

Frage von bugmenot2 zum Thema Batch & Shell ...

Webbrowser
InternetExplorer ersetzt die Endung . durch nen Unterstrich (26)

Frage von MarcoMoock zum Thema Webbrowser ...

Windows Installation
Java 8 Deployment (Automatisches entfernen von Java7) (3)

Frage von SaschaDE zum Thema Windows Installation ...

Heiß diskutierte Inhalte
Hardware
200 Festplatten entsorgen (54)

Frage von hahaxd3 zum Thema Hardware ...

Router & Routing
Mikrotik für VLAN einrichten (21)

Frage von PM-Manuel zum Thema Router & Routing ...

Outlook & Mail
GELÖST Outlook 2013 zeigt im Posteingang mehrere Millionen Mails als ungelesen an (18)

Frage von coltseavers zum Thema Outlook & Mail ...

Windows Userverwaltung
User verstecken Server 2012 (18)

Frage von achim222 zum Thema Windows Userverwaltung ...