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

SHIFT trennt Kommandozeilenargument mit Wertzuweisung auf

Frage Entwicklung Batch & Shell

Mitglied: Schnulle500

Schnulle500 (Level 1) - Jetzt verbinden

25.05.2009, aktualisiert 10:22 Uhr, 2762 Aufrufe, 3 Kommentare

Bekomme die Kommendozeilenargumente bei folgendem Aufruf nicht auseinander:
test.bat "C:\My Folder\out.txt" arg1=5 argx=y

test.bat:
01.
@echo off 
02.
:NEXT_CMDLINE_ARG 
03.
IF NOT "%~1"=="" ( 
04.
  ECHO %~1 
05.
  SHIFT 
06.
  GOTO NEXT_CMDLINE_ARG 
07.
)
Ist-Output:
01.
C:\My Folder\out.txt 
02.
arg1 
03.
04.
argx 
05.
y
Soll-Output:
01.
C:\My Folder\out.txt 
02.
arg1=5 
03.
argx=y
Kann mir hier bitte jemand helfen?
Mitglied: Biber
25.05.2009 um 10:43 Uhr
Moin Schnulle500,

in diesem Fall (wenn ein Argument ein Gleichheitszeichen enthält) musst du es ausdrücklich als EIN Argument kennzeichnen, indem Du es in Anführungszeichen einbettest.

Demo:
01.
(=10:38:17  D:\temp=) 
02.
>test C:\myfolder\out.txt arg1=5 argx=y 
03.
C:\myfolder\out.txt 
04.
arg1 
05.
06.
argx 
07.
08.
 
09.
 
10.
(=10:38:41  D:\temp=) 
11.
>test C:\myfolder\out.txt "arg1=5" "argx=y" 
12.
C:\myfolder\out.txt 
13.
arg1=5 
14.
argx=y
ist zusätzlich noch ein Teil des Arguments selbst in Anführungszeichen, dann entsprechend:
01.
>test C:\myfolder\out.txt "arg1=5" "argx="y"" 
02.
C:\myfolder\out.txt 
03.
arg1=5 
04.
argx="y"
Grüße
Biber
Bitte warten ..
Mitglied: Schnulle500
25.05.2009 um 11:21 Uhr
OK, vielen Dank.

So weit hatte ich's schon, konnte es aber nicht glauben, dass das wirklich nicht geht.

Bis dann
Schnulle500
Bitte warten ..
Mitglied: LotPings
25.05.2009 um 11:30 Uhr
Hallo Schnulle500,
die Standard Delimiter auf der Kommandozeile sind Komma Semikolon Leer Gleichheitszeichen und TAB.

Aber du kannst ja die Kommandozeile selber dekodieren

Alle Argumente ungetrennt kriegst du mit %*
Parsen musst du dann halt selber.

Gruß
LotPings
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Sticky Notes - Autostart unterbinden

(1)

Tipp von Pedant zum Thema Windows 10 ...

Ähnliche Inhalte
Notebook & Zubehör
Laptop schreibt groß weiter, obwohl Shift losgelassen wurde (6)

Frage von Yauhun zum Thema Notebook & Zubehör ...

Heiß diskutierte Inhalte
Router & Routing
Tipps für Router (ca. 100 clients, VPN) (18)

Frage von oel-auge zum Thema Router & Routing ...

TK-Netze & Geräte
gelöst Convert von TAPI auf CAPI gesucht (13)

Frage von StefanKittel zum Thema TK-Netze & Geräte ...