Top-Themen

Aktuelle Themen (A bis Z)

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 Abfrage, ob Parametervariable initialisiert

Mitglied: 24855

24855 (Level 1)

02.03.2006, aktualisiert 17:24 Uhr, 5643 Aufrufe, 9 Kommentare

ich habe eine Batch geschrieben der 4 Variablen als Parameter übergeben werden,
ich möchte jetzt die 4. Variable mit einer art "default Wert" belegen, der soll verwendet werden, wenn der user nur 3 Parameter an seinen Aufruf anhängt.

Aufruf ...batchdateiname var1 var2 var3 var4...

if "%4"="" ... hier soll der wert der variable auf "c" gesetzt werden (ohne anführungszeichen) wenn If nicht erfüllt ist..


ich weis auch nicht genau ob da 2 % Zeichen hingehören in die Bedingte Anweisung

Schonmal ein DANKE für eine Antwort
Mitglied: Dani
02.03.2006 um 10:54 Uhr
Hi,
probier's mal damit:

@echo off
if "%4" == "" goto t1
if not "%4" == "" goto t2

:t1
set var4=10
goto ende

:t2
var4=%4
goto ende

:ende
echo %var4%


Gruß
Dani
Bitte warten ..
Mitglied: 24855
02.03.2006 um 11:05 Uhr
Danke Dir Dani!

geht es denn so???

if "%4" == "" set "c"=%4

Ich brauche keine Sprungmarken oder der gleichen es sei denn das lässt sich nicht anders realisieren, ich möchte ja eigentlich nur wissen, wie ich den Wert von %4 = "c" setze wenn "%4" == "" zutrifft!
Bitte warten ..
Mitglied: Dani
02.03.2006 um 11:13 Uhr
Hi,
so muss es geht:
if "%4" == "" set c=%4


Gruß
Dani
Bitte warten ..
Mitglied: 24855
02.03.2006 um 11:47 Uhr
mhh leider geht es so nicht ... er übergibt die variablen nicht .. an der stelle..wo sie sonst wenn ich sie als parameter übergebe stehen.. ist jetzt nichts bei der ausgabe auf der konsole zu sehen, also wird nichts übergeben, variablen sind leer

mein code:

REM Überprüfung ob Ziellaufwerk uebergeben wurde sonst
REM
setzen auf DEFAULT C

if "%4" == "" set e=%4

REM Überprüfen ob Benutzername übergeben wurde sonst
REM
setzen auf DEFAULT ADMINISTRATOR

if "%3" == "" set "Administrator"=%3

Liegt bestimmt nur an nem detail, oder kann man Umgebungsvariablen nicht nachträglich ändern? dann müsste man erst die Umgebungsvariablen in einen reguläre kopieren und dann mit dieser arbeiten.. geht dass auch mit set? .. bei normalen variablen muss ich doch 2 %% benutzen oder?
Bitte warten ..
Mitglied: Dani
02.03.2006 um 12:51 Uhr
Hi,
mach mal die " bei Administrator weg! Probier mal das Ganze mit meiner Vorlage oben.

Gruß
Dani
Bitte warten ..
Mitglied: Dani
02.03.2006 um 12:51 Uhr
Hi,
mach mal die " bei Administrator weg! Probier mal das Ganze mit meiner Vorlage oben.

Gruß
Dani
Bitte warten ..
Mitglied: Biber
02.03.2006 um 13:04 Uhr
Moin WI#Janosch,
mach es so:
::---snipp DeinBatch.bat
@echo off & setlocal
If "%4"=="" %0 %* c
....(der Rest vom Batch)
....
::---snapp DeinBatch.bat

HTH
Biber
Bitte warten ..
Mitglied: 24855
02.03.2006 um 15:10 Uhr
Ich glaub es kaum aber mit den Sprungmarken geht es warum auch immer:

REM Überprüfung ob Ziellaufwerk uebergeben wurde sonst
REM
setzen auf DEFAULT C //hier noch zu testzwecken e

if "%4" == "" goto t1
if not "%4" == "" goto t2

:t1
set var4=e
goto ende

:t2
var4=%4
goto ende

:ende


REM Überprüfen ob Benutzername übergeben wurde sonst
REM
setzen auf DEFAULT ADMINISTRATOR

if "%3" == "" goto t11
if not "%3" == "" goto t22

:t11
set var3=administrator
goto ende1

:t22
var3=%3
goto ende1

:ende1

........

funktioniert

sry Biber .. hab erst noch n anderes Prob Lösen müssen, vielleicht hätt ich dir dann dein Post ersparen können

thx 2 ALL
Bitte warten ..
Mitglied: Biber
02.03.2006 um 17:24 Uhr
Na, WI#Janosch,

trotzdem will ich diesen Spaghetticode nicht so stehen lassen..

a) Wenn es nur um den Parameter 4 geht, der optional ist, siehe meinen Post oben.
b) Wenn Parameter 3 und 4 optional sind, dann tatsächlich Zwischenvariablen verwenden:

...
If [%2]==[] echo %0: Parameter 2 fehlt! & goto :eof
If [%1]==[] echo %0: Parameter 1 und 2 fehlen! & goto :eof
:: --- Parameter 3 und 4 sind optional mit Default
If [%4]==[] (set "par4=c") else set "par4=%4"
If [%3]==[] (set "par3=Administrator") else set "par3=%3"

Call MachIrgendwas.bat %1 %2 %par3% %par4%
...

Gruß
Biber
[Edit] set's bei Par3 und Par4 in Klammern gesetzt. [/Edit]
Bitte warten ..
Ähnliche Inhalte
Windows Server

Raid 1 irrtümlicher Weise initialisiert

gelöst Frage von mausemuckelWindows Server17 Kommentare

Guten Abend in die Runde und zerreißt mich bitte nicht. An meinem Windows Server 12 Standard Mit einem Intelboard ...

Festplatten, SSD, Raid

WD RED 3 TB wird nicht initialisiert

gelöst Frage von m.reegerFestplatten, SSD, Raid11 Kommentare

Hallo liebe Gemeinde, voller Vorfreude kam nun endlich meine neue WD RED 3 TB an. Also gleich ausgepackt und ...

Exchange Server

Powershell Archivmailbox abfrage Abfrage

Frage von Clubby84Exchange Server5 Kommentare

Hallo zusammen, möchte gerne eine Ausgabe in eine Datei haben, mit allen Mailboxen, bei denen das Archiv noch nicht ...

Windows 10

KB4019472 installiert - Datenträger 1 wird nicht meh initialisiert

Frage von OrbitusWindows 102 Kommentare

Hallo zusammen, vll ist es nur etwas triviales und ich stehe nur auf dem Schlauch oder verwende die falschen ...

Neue Wissensbeiträge
Backup

2016 - Restore mit WBAdmin - iSCSI Device als Sicherungsziel

Erfahrungsbericht von Henere vor 41 MinutenBackup

Servus zusammen, was mich eben einige graue Haare gekostet hat Server 2016. Ich habe meinem Server eine weitere M2 ...

Humor (lol)
(Part num your Hacked phone. +XX XXXXXX5200)
Erfahrungsbericht von Henere vor 2 TagenHumor (lol)5 Kommentare

Mein Handy hat aber ne ganz andere Endnummer. Muss ich mir jetzt Sorgen machen ? :-) Vielleicht betrifft es ...

Exchange Server

Letztes Update für Exchange 2016 CU9 war in gewisser Weise destruktiv

Erfahrungsbericht von DerWoWusste vor 2 TagenExchange Server7 Kommentare

Kurzer Erfahrungsbericht zu Exchange2016-KB4340731-x64 Der Exchangeserver hat wie gewöhnlich versucht, es in der Nacht automatisch zu installieren - abgesehen ...

Erkennung und -Abwehr

Neue Sicherheitslücke Foreshadow (L1TF) gefährdet fast alle Intel-Prozessoren

Information von Frank vor 3 TagenErkennung und -Abwehr3 Kommentare

Eine neue Sicherheitslücke, genannt Foreshadow (alias L1TF) wurde auf der Usenix Security 18 von einem Team internationaler Experten veröffentlicht. ...

Heiß diskutierte Inhalte
Netzwerke
Netzwerk-Architektur mit VLANs
Frage von niLuxxNetzwerke40 Kommentare

Liebe Community, Ich hätte eine kurze Frage an euch. Ich werde in Kürze das Netzwerk unserer (sehr) kleinen Firma ...

Netzwerke
SSH - Wieso werde ich nach VPN Verbindung rausgeschmissen?
Frage von VernoxVernaxNetzwerke10 Kommentare

Hallo, ich habe es endlich geschafft mein Handy mit einer VPN Verbindung an meinen Router anzuschließen. Nach der Login ...

Microsoft
Ist es möglich ein reines Volume C Datenbackup in eine Hyper-V VM zu konvertieren?
Frage von Frank84Microsoft10 Kommentare

Hallo zusammen, ich habe hier ein Backup vorliegen, das ausschließlich das komplette C:\ Volume eines physischen Server 2012 enthält. ...

Windows Server
Freigaben per Default nur für Domänen-Benutzer
Frage von tierwoWindows Server8 Kommentare

Hallo gibt es eine Möglichkeit, einen Server 2016 so zu konfigurieren (z.B. per GPO), dass Freigaben die erstellt werden ...