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

Batch if abfrage ob variable eof ist

Frage Entwicklung

Mitglied: d3luxe

d3luxe (Level 1) - Jetzt verbinden

06.02.2009, aktualisiert 21:54 Uhr, 6243 Aufrufe, 4 Kommentare

Also ich programmiere derzeit an einer batch die ein passwort generieren soll die basis ist die eingabe eines textes des users dieser text wird in hex umgewandelt... das funktioniert soweit! Das ergebnis soll in eine textdatei und das alles in eine zeile wie ich das mache hab ich herausgefunden.. nur will die abfrage von eof nicht so wie ich weswegen das ganze nicht machbar ist..


@echo off
set /p ta=Geben sie den speicherort an, an dem das passwort gespeichert werden soll:
echo Bei saetzen bitte keine leerzeichen sonder - verwenden.
set /p va=Geben sie den zu uebersetzenden text ein:
SET _startchar=0
SET _length=1
SET _donor=%va%
:loop
CALL SET _substring=%%_donor:~%_startchar%,%_length%%%
echo %_substring%
if %_substring%==- set %vb%=20
if %_substring%==a set %vb%=61
if %_substring%==b set %vb%=62
if %_substring%==c set %vb%=63
if %_substring%==d set %vb%=64
if %_substring%==e set %vb%=65
if %_substring%==f set %vb%=66
if %_substring%==g set %vb%=67
if %_substring%==h set %vb%=68
if %_substring%==i set %vb%=69
if %_substring%==j set %vb%=6A
if %_substring%==k set %vb%=6B
if %_substring%==l set %vb%=6C
if %_substring%==m set %vb%=6D
if %_substring%==n set %vb%=6E
if %_substring%==o set %vb%=6F
if %_substring%==p set %vb%=70
if %_substring%==q set %vb%=71
if %_substring%==r set %vb%=72
if %_substring%==s set %vb%=73
if %_substring%==t set %vb%=74
if %_substring%==u set %vb%=75
if %_substring%==v set %vb%=76
if %_substring%==w set %vb%=77
if %_substring%==x set %vb%=78
if %_substring%==y set %vb%=79
if %_substring%==z set %vb%=7A
if %_substring%==1 set %vb%=31
if %_substring%==2 set %vb%=32
if %_substring%==3 set %vb%=33
if %_substring%==4 set %vb%=34
if %_substring%==5 set %vb%=35
if %_substring%==6 set %vb%=36
if %_substring%==7 set %vb%=37
if %_substring%==8 set %vb%=38
if %_substring%==9 set %vb%=39
if %_substring%==0 set %vb%=30
set varText=%vb%
if /I %_startchar% GEQ 1 set varText=%varText%%vb%
SET /a _startchar=%_startchar%+1
if %_substring%==eol goto next
goto loop
:next
echo %varText% >> %ta%\passwort.txt
echo ende >> %ta%\passwort.txt



Nach dem die eingabe umgesetzt wurde endet es.. ohne eol genutzt zu haben kann mir wer sagen wieso?

Edit:
Denkt euch die % bei %vb% weg war en versehen ^^ wird gleich ersetzt :D
Mitglied: bastla
06.02.2009 um 21:55 Uhr
Hallo d3luxe und willkommen im Forum!

Vielleicht so
if "%_substring%"=="" goto next
oder so
if not defined _substring goto next
Grüße
bastla
Bitte warten ..
Mitglied: d3luxe
06.02.2009 um 22:11 Uhr
Danke für deine Antwort bastla, leider geht das bei mir nicht.. ich werde jetzt das ganze bis zum fehler zurückverfolgen also sehr viel pause :D ich werd den beitrag gleich mit dem ergebnis editieren.

Edit:
Ok.. es endet bei den ganzen if abfragen wenn substring undefiniert is.. das heißt ich verschiebe jetzt ma das goto next und teste nochma ok :D
Bitte warten ..
Mitglied: bastla
06.02.2009 um 22:19 Uhr
Hallo d3luxe!

Falls ich Dein Vorhaben richtig interpretiere, sollte es eher so klappen:
01.
@echo off & setlocal 
02.
set /p ta=Geben sie den speicherort an, an dem das passwort gespeichert werden soll: 
03.
echo Bei saetzen bitte keine leerzeichen sonder - verwenden. 
04.
set /p va=Geben sie den zu uebersetzenden text ein: 
05.
 
06.
SET /a _startchar=0 
07.
SET /a _length=1 
08.
SET "_donor=%va%" 
09.
SET varText= 
10.
 
11.
:Loop 
12.
CALL SET _substring=%%_donor:~%_startchar%,%_length%%% 
13.
if not defined _substring goto :Fertig 
14.
 
15.
echo %_substring% 
16.
if %_substring%==- set "vb=20" 
17.
if %_substring%==a set "vb=61" 
18.
if %_substring%==b set "vb=62" 
19.
if %_substring%==c set "vb=63" 
20.
if %_substring%==d set "vb=64" 
21.
if %_substring%==e set "vb=65" 
22.
if %_substring%==f set "vb=66" 
23.
if %_substring%==g set "vb=67" 
24.
if %_substring%==h set "vb=68" 
25.
if %_substring%==i set "vb=69" 
26.
if %_substring%==j set "vb=6A" 
27.
if %_substring%==k set "vb=6B" 
28.
if %_substring%==l set "vb=6C" 
29.
if %_substring%==m set "vb=6D" 
30.
if %_substring%==n set "vb=6E" 
31.
if %_substring%==o set "vb=6F" 
32.
if %_substring%==p set "vb=70" 
33.
if %_substring%==q set "vb=71" 
34.
if %_substring%==r set "vb=72" 
35.
if %_substring%==s set "vb=73" 
36.
if %_substring%==t set "vb=74" 
37.
if %_substring%==u set "vb=75" 
38.
if %_substring%==v set "vb=76" 
39.
if %_substring%==w set "vb=77" 
40.
if %_substring%==x set "vb=78" 
41.
if %_substring%==y set "vb=79" 
42.
if %_substring%==z set "vb=7A" 
43.
if %_substring%==1 set "vb=31" 
44.
if %_substring%==2 set "vb=32" 
45.
if %_substring%==3 set "vb=33" 
46.
if %_substring%==4 set "vb=34" 
47.
if %_substring%==5 set "vb=35" 
48.
if %_substring%==6 set "vb=36" 
49.
if %_substring%==7 set "vb=37" 
50.
if %_substring%==8 set "vb=38" 
51.
if %_substring%==9 set "vb=39" 
52.
if %_substring%==0 set "vb=30" 
53.
 
54.
SET "varText=%varText%%vb%" 
55.
SET /a _startchar+=1 
56.
goto :Loop 
57.
 
58.
:Fertig 
59.
>>"%ta%\passwort.txt" echo %varText% 
60.
>>"%ta%\passwort.txt" echo ende
Grüße
bastla
Bitte warten ..
Mitglied: d3luxe
06.02.2009 um 22:29 Uhr
Danke, es funktioniert :D Ich hab es sogar noch selbst gelöst ^^ aber ohne deine abfrage hätte ichs nicht geschafft.


Ich makiere den beitrag als gelöst
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Batch Abfrage Vergleiche mit Variable goto (4)

Frage von Zunaras zum Thema Batch & Shell ...

Batch & Shell
Batch-Variable nach Stichworten aus TXT Datei durchsuchen (3)

Frage von Markus5579 zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch Variable setzten mit Leerzeichen (3)

Frage von Marlon1 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Installation
Eine etwas (wirklich) speziellere Frage: Windows 10-Installation über (16)

Frage von DerFurrer zum Thema Windows Installation ...

Verschlüsselung & Zertifikate
gelöst Festplattenverschlüsselung im Ausland (13)

Frage von Nicolaas zum Thema Verschlüsselung & Zertifikate ...

Multimedia & Zubehör
gelöst Iphone 6 prob (12)

Frage von jensgebken zum Thema Multimedia & Zubehör ...

Festplatten, SSD, Raid
gelöst Fehlerhafte Blöcke im RAID 10 (12)

Frage von Kojak-LE zum Thema Festplatten, SSD, Raid ...