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

Prüfen ob Variable existiert wenn nicht dann setzen

Frage Entwicklung Batch & Shell

Mitglied: L0c4lh0sT

L0c4lh0sT (Level 1) - Jetzt verbinden

18.05.2009, aktualisiert 14:43 Uhr, 18113 Aufrufe, 3 Kommentare

So ich soll mal ne kleine Batch machen die prüft ob eine Variable vorhanden ist.
Wenn nicht dann soll sie gesetzt werden. Wenn Sie aber exisiert soll ihr ein anderer Wert gegeben werden.

Das was ich bis jetzt habe ist ein Script aus der Unix Welt, was mir aber nicht wirklich weiterhilft.

if ["x$var"=="x"] then
export var=wert
done

Wie sieht das in einer Batch datei aus?
Kann man das überhaupt so gestalten?

MfG
Alex
Mitglied: 78632
18.05.2009 um 15:06 Uhr
In Batch-Verarbeitung kann man die Existenz einer Umgebungsvariablen mit "defined" überprüfen

01.
if defined variablenname (set variablenname=neuer Wert) else (set variablenname=irgendwas)
Bitte warten ..
Mitglied: miniversum
18.05.2009 um 15:17 Uhr
Kleiner Zusatz:
Da in Batch Variabeln ja nicht deklariert werden müssen kann eigentlich auch gleich ein Wert zugewiesen werden.
Setzen und zuweisen sind also das gleiche.
Wird ihr nichts zugewisen existiert sie automatisch nicht. Daher geht auch statt
if defined variable
ein
if "%variable%" equ ""
oder, damit Du den Vergleich zum UNIX Skript hast:
01.
if "x%var%"=="x" ( 
02.
set var=wert 
03.
)
Bitte warten ..
Mitglied: 78632
18.05.2009 um 15:26 Uhr
Man kann auch anders prüfen und setzen:
01.
if not "%variable%"=="" (set variable=veränderter neuer Wert) else (set variable=irgendwas zur Initialisierung)
Und dann kann man noch in der Konsole
help if oder if /?
eingeben.
Bitte warten ..
Neuester Wissensbeitrag
Off Topic

"Ich habe nichts zu verbergen"

(2)

Erfahrungsbericht von FA-jka zum Thema Off Topic ...

Ähnliche Inhalte
PHP
gelöst TXT Datei auslesen und bestimmte Zeilen in Variable setzen (11)

Frage von 126594 zum Thema PHP ...

Batch & Shell
Variable setzen können während timeout (3)

Frage von DontFlameMeITryMyBest zum Thema Batch & Shell ...

VB for Applications
VBA Grenzwerte in String prüfen Regex ??? Excel2010 (1)

Frage von Chillministrator zum Thema VB for Applications ...

Batch & Shell
gelöst Mit zusammengesetzter Variable auf andere Variable zugreifen (2)

Frage von abiber zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Linux Netzwerk
gelöst DHCP vergibt keine Adressen (32)

Frage von Maik82 zum Thema Linux Netzwerk ...

Apache Server
gelöst Lets Encrypt SSL mit Apache2 (20)

Frage von banane31 zum Thema Apache Server ...

CPU, RAM, Mainboards
Kaufberatung für mind. 8 verschiedene HighEnd-Mainboards (20)

Frage von yperiu zum Thema CPU, RAM, Mainboards ...

Hardware
gelöst PCI-Express-Adapterfrage (14)

Frage von DerWoWusste zum Thema Hardware ...