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

Variable auf 20 Zeichen begrenzen

Frage Entwicklung Batch & Shell

Mitglied: Soidberg

Soidberg (Level 1) - Jetzt verbinden

22.02.2009, aktualisiert 02:46 Uhr, 7824 Aufrufe, 3 Kommentare

Batch vs. Temp vbs, übergebene Variable des vbs auf 20 Zeichen begrenzen

Hallo ihr lieben,

ich habe mir ein Skript gebastelt das auch soweit sehr gut funktioniert. Einzigstes Problem ist das die Usereingabe noch auf Zeichenlänge überprüft werden müsste.

Es dürfen nicht mehr als 20 Zeichen eingeben werden bzw. später übergeben werden.

Anbei mein Skript:

01.
setlocal 
02.
cls 
03.
echo. 
04.
Echo 	Starte Eingabeskript (Intern)... 
05.
 
06.
:: Setze Variable und erstelle vbs 
07.
set "Eingabe=%temp%\Eingabe.vbs" 
08.
echo WScript.Echo InputBox("Bitte den Namen eingeben", "Internen-FTP anlegen", "1234567-TestoriusGMBH")>"%Eingabe%" 
09.
for /f "delims=" %%i in ('cscript //nologo "%Eingabe%"') do set "Neu=%%i" 
10.
del "%Eingabe%" 
11.
if "%Neu%"=="" goto :eof 
12.
 
13.
<HIER MÜSSTE GEPRÜFT WERDEN> 
14.
 
15.
::übergebe die Eingabe an das alte Skript 
16.
cls 
17.
d: 
18.
cd \ 
19.
cd Inetpub\ftproot\homedir\intern 
20.
@Echo on 
21.
cls 
22.
md %Neu% 
23.
iisftp.vbs /SetADProp %Neu% FTPRoot D:\Inetpub\homedir\intern 
24.
iisftp.vbs /SetADProp %Neu% FTPDir \%Neu% 
25.
pause 
26.
goto eof
Die Variable %Neu% müsste nach eingabe überprüft werden und wenn es mehr als 20 Zeichen sind zu einer Marke (:ERROR) springen, ansonsten ganz normal ab ":übergebe die Eingabe an das alte Skript" weitermachen.

Vermutlich ist es ganz einfach aber mir fehlt hierzu der Ansatz.

LG Soidberg
Mitglied: paulepank
22.02.2009 um 09:46 Uhr
Hallo Soidberg,

<HIER MÜSSTE GEPRÜFT WERDEN>

könnte so gehen:
01.
echo %Neu:~20,1%|findstr ECHO || goto :error
Hintergrund:Es wird versucht das 21. Zeichen auszugeben.
Falls das nicht möglich ist wird ein ECHO .... ausgegeben, d.h. es wird in der Batch der nächste Befehl abgearbeitet
Falls ein 21. Zeichen existiert wird dieses ausgegeben und damit wird zur :error-Marke gesprungen.

EDIT:Kommentar entfernt

cu paulepank
Bitte warten ..
Mitglied: bastla
22.02.2009 um 10:18 Uhr
Hallo Soidberg und paulepank!

Gleiches Prinzip, andere Formulierung:
if "%Neu:~20%" neq "" goto :ERROR
Grüße
bastla
Bitte warten ..
Mitglied: Soidberg
22.02.2009 um 15:52 Uhr
Hallo bastla,
Hallo paulepank.

Vielen lieben Dank für die funktionierenden Lösungen.

Es funktionieren beide, ich habe mich jetzt für bastla seine Methode entschieden, bin euch aber beiden für eure Hilfe sehr dankbar.

LG Soidberg
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
20-25 PowerPoint-Lizenzen Welche Lizenttypen sinnvoll (2)

Frage von Server-Nutzer zum Thema Microsoft Office ...

VB for Applications
gelöst Formelergebnis in Variable speichern (1)

Frage von Juweee zum Thema VB for Applications ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Festplatten, SSD, Raid
PC stellt nach dem Bios ab (20)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...

iOS
16 iPads zentrall verwalten (18)

Frage von simonlohr zum Thema iOS ...

Server-Hardware
Einem Stromausfall entgegen wirken (15)

Frage von OIOOIOOIOIIOOOIIOIIOIOOO zum Thema Server-Hardware ...

Windows 7
Freeware MSI Tool (13)

Frage von uridium69 zum Thema Windows 7 ...