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

Nur Werte eingeben, die in einer txt Datei stehen!

Frage Entwicklung Batch & Shell

Mitglied: ConsTricTa

ConsTricTa (Level 1) - Jetzt verbinden

10.12.2009, aktualisiert 23:07 Uhr, 3045 Aufrufe, 4 Kommentare

Hallo

kurze Beschreibung:
jeder Arbeiter loggt sich in ein Programm ein, wo im Hintergrund automatisch sein Benutzername in eine .txt Datei geschrieben wird, die auf einem Netzlaufwerk liegt.
Das ganze geht einfach so!

01.
 echo %username% >> users.txt 
So jz zu meinem 1. Problem. Wenn der User schon einmal darin steht. will ich nicht, dass er nochmal aufscheint, dann passiert einfach gar nichts...

und 2.
Gebe ich diese users.txt dann aus mit
01.
 type users.txt 
was dann ca so aussieht

tester.felix
hans.ball
max.mustermann
fischer.hans

(also usernamen bestehen meistens aus "NACHNAME.NAME" außer administratoren namen)

zurück zu meinem problem:
ich soll jz nur diese werte eingeben können, die in der txt datei sind bzw. gerade ausgegeben wurden!
bsp:
wenn ich "tester.felix" eingebe
01.
 goto OKAY 
wenn ich aber "hund.katze" eingebe
01.
 goto DENIED 
Hoffe das geht!
Grüße
Julian
Mitglied: tim1986
11.12.2009 um 00:46 Uhr
Hi,
ich denke so sollte es gehen...

01.
@echo off 
02.
set /p Username=Benutzername: 
03.
findstr /c:%Username% userliste.txt 
04.
if errorlevel == 1 goto denied 
05.
if errorlevel == 0 goto okay 
06.
 
07.
 
08.
 
09.
 
10.
:okay 
11.
echo okay 
12.
goto whatever 
13.
:denied 
14.
echo denied 
15.
goto whatever 
16.
 
17.
:whatever 
18.
echo geht 
19.
pause
Bitte warten ..
Mitglied: rubberman
11.12.2009 um 01:09 Uhr
Hallo ConsTricTa und tim1986.

@tim1986 Ich würde der Environmentvariable %username% nicht unbedingt einen neuen Wert geben. Da könnte man auch einen anderen Variablennamen wählen.

@ConsTricTa
1.)
01.
@echo off &setlocal 
02.
findstr /l /i /b /c:"%username%" "users.txt" 2>nul>nul&&goto :eof 
03.
echo %username%>>"users.txt" 
04.
 
05.
echo User wurde hinzugefuegt. 
06.
pause
2.)
01.
@echo off &setlocal 
02.
set /p "uName=Name: " 
03.
findstr /l /i /b /c:"%uName%" "users.txt" 2>nul>nul&&goto OKAY||goto DENIED 
04.
 
05.
:OKAY 
06.
echo OKAY 
07.
pause 
08.
goto :eof 
09.
 
10.
:DENIED 
11.
echo DENIED 
12.
pause
Grüße
rubberman
Bitte warten ..
Mitglied: tim1986
11.12.2009 um 11:56 Uhr
ich wollts halt von der Syntax einfach halten...
aber ich lass mich natürlich gern belehren =)
Bitte warten ..
Mitglied: ConsTricTa
11.12.2009 um 13:41 Uhr
dankeschön! funktioniert super!
vielen vielen danke ;)

grüße
julian
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch-Variable nach Stichworten aus TXT Datei durchsuchen (3)

Frage von Markus5579 zum Thema Batch & Shell ...

Webentwicklung
gelöst HTML Output in eine txt Datei mit VisualBasicScript (2)

Frage von coca22COCA zum Thema Webentwicklung ...

Batch & Shell
gelöst Merkwürdige Zeilenformatierung in txt Datei (3)

Frage von miczar zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Verschlüsselung & Zertifikate
gelöst Festplattenverschlüsselung im Ausland (13)

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

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

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

Windows Server
gelöst Microsoft-Lizenz CALs und passendes Server-Betriebssystem (12)

Frage von planetIT2016 zum Thema Windows Server ...

Netzwerkgrundlagen
gelöst Cisco SG500 Series LAG hat sich von selbst umgestellt (11)

Frage von Ex0r2k16 zum Thema Netzwerkgrundlagen ...