cmd: Findet den ersten Buchstaben einer Zeichenkette

-2

Ich habe keine Kenntnisse über die Syntax der cmd-Programmierung. Ich habe eine Textdatei mit Benutzer-IDs, die ich mit dem Befehl curl löschen und dazu das erste Zeichen jeder Benutzer-ID extrahieren und dann an den Befehl curl übergeben muss. Ich kenne den Befehl curl, für den ich zwei Variablen benötige:

  1. 'UserID' - Liest aus der Textdatei.
  2. 'firstCharacter' - Extrahiert das erste Zeichen aus der Benutzer-ID.

Im Folgenden finden Sie den Code zum Abrufen von Benutzer-IDs aus der Datei symantecUsers.txt:

@echo off
for /f "tokens=*" %%a in (symantecUsers.txt) do call :processline %%a
pause
goto :eof
:processline
echo %*
goto :eof
:eof

Bitte helfen Sie mir beim Extrahieren des ersten Zeichens aus den gelesenen Benutzer-IDs. Vielen Dank.

Jineet Vora
quelle
Sie arbeiten also immer noch mit MS-DOS, dem Betriebssystem aus den 1980er Jahren?
aschipfl
@aschipfl haha ​​... yeah hab keine andere möglichkeit ... wollte mit einem einfacheren weg gehen ...
Jineet Vora

Antworten:

3

Sie können eine Teilzeichenfolge mit der Taste erhalten ~n,m Syntax für eine Variable.

Setlocal EnableDelayedExpansion

for /f "tokens=1" %%a in (symantecUsers.txt) do (
    set userid=%%a
    echo The first character is !userid:~0,1!
)
Berend
quelle
Das funktioniert für Echo, aber wie speichere ich das in einer Variablen?
Jineet Vora
In der gleichen Weise: set firstchar=!userid:~0,1!
Berend
@erreka Das kommt wohl darauf an, wie du das definierst DOS :-)
Berend