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

Übergebene Variable und Rest ausgeben?

Frage Entwicklung Batch & Shell

Mitglied: Thanquol

Thanquol (Level 1) - Jetzt verbinden

11.04.2008, aktualisiert 12:03 Uhr, 5877 Aufrufe, 3 Kommentare

Ahoi,

ich stehe grad vor folgendem "Problem"

ich hab eine :Funktion
die ich mittels
call :Funktion Parameter "langer String mit leerzeichen"
aufrufe!

Nun hab ich in der :Funktion
%1 = Parameter
%2 = "langer String mit leerzeichen"

Ich hätte %2 aber gern ohne leerzeichen, ohne den String nachträglich noch bearbeiten zu müssen.

Mittels:
call :Funktion Parameter langer String mit leerzeichen
erreiche ich:
%1 = Parameter
%2 = langer
%3 = String
%4 ....

Gibt es nun hier eine "Sondervariable" mit der ich %2-Rest aller übergebener Variablen anzeigen lassen kann?
Ich der mIRC "Programmiersprache" geht sowas mit $2-

Kennt Batch sowas auch?

Danke!
Mitglied: bastla
11.04.2008 um 07:51 Uhr
Hallo Thanquol!

Dazu brauchst Du eine Zerlegung mittels "for /f", also etwa:
01.
@echo off & setlocal 
02.
call :Funktion Parameter1 "langer String mit Leerzeichen" 
03.
goto :eof 
04.
 
05.
:Funktion 
06.
for /f "tokens=1*" %%i in ("%~2") do set "Anfang=%%i" & set "Rest=%%j" 
07.
echo %1 
08.
echo %Anfang% 
09.
echo %Rest% 
10.
goto :eof
Grüße
bastla
Bitte warten ..
Mitglied: tacker
11.04.2008 um 09:02 Uhr
Guten Tag

wen du nur die Leerzeichen aus dem String entfernen willst kannst du dich auch diesem command bedienen:

01.
set stringnachher=%stringvorher: =%
Dies würde dann so aussehen:
01.
@echo off & setlocal 
02.
call :Funktion Parameter1 "langer String mit Leerzeichen" 
03.
goto :eof 
04.
 
05.
:Funktion 
06.
set stringvorher=%2 
07.
set stringnachher=%stringvorher: =% 
08.
echo %1 
09.
echo.String_Vorher: %stringvorher% 
10.
echo.String_Nachher: %stringnachher% 
11.
goto :eof
natürlich noch potential zum komprimieren vorhanden...

Grüsse tacker
Bitte warten ..
Mitglied: Thanquol
11.04.2008 um 12:03 Uhr
Hiho,

danke für die Tipps,

aber der Befehl von Bastla:
%~2
macht exakt das was ich will ;)

auch ohne Vorschleife, oder sonstige Stringbearbeitung!
Bitte warten ..
Ähnliche Inhalte
PHP
gelöst HTML Dropdownmenü auslesen und in PHP als Variable übergeben (35)

Frage von ITFlori zum Thema PHP ...

Batch & Shell
gelöst Powershell invoke Command Variablen übergeben (4)

Frage von H41mSh1C0R zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Server

Umstellung SHA 1 auf SHA 2 - Migration der CA von CSP auf KSP

Tipp von Badger zum Thema Windows Server ...

Windows 10

Quato DTP94 unter Windows 10 x64 installieren und verwenden

Anleitung von anteNope zum Thema Windows 10 ...

Windows 10

Win10 1703 und Nutzerkennwörter bei Ersteinrichtung - erstaunliche Erkenntnis

(15)

Erfahrungsbericht von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Server-Hardware
HP DL380 G7: Booten vom USB via USB 3.1-PCI-e Karte möglich? (24)

Frage von Paderman zum Thema Server-Hardware ...

Windows 7
Bluesreens unternehmensweit (18)

Frage von SYS64738 zum Thema Windows 7 ...

LAN, WAN, Wireless
IP Adressen - Modem - Switch - Accesspoint (17)

Frage von teuferl82 zum Thema LAN, WAN, Wireless ...

Windows Netzwerk
DNS ins mehreren Subnetzen (13)

Frage von joerg zum Thema Windows Netzwerk ...