cmd:从字符串中查找第一个字母


-2

我对cmd编程语法一无所知。我有一个包含用户ID的文本文件,需要使用curl命令将其删除,为此,我需要提取每个用户ID的第一个字符,然后传递给curl命令。我知道curl命令,我需要两个变量:

  1. 'UserID'-从文本文件读取。
  2. 'firstCharacter'-从用户ID中提取第一个字符。

以下是从symantecUsers.txt文件中获取用户ID的代码:

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

请帮助我从读取的用户ID中提取第一个字符。谢谢。



因此,您仍在使用MS-DOS(1980年代的操作系统)吗?
aschipfl 2016年

@aschipfl哈哈...是的,别无选择...想要采用一种更简单的方法...
Jineet Vora 16-4-26

Answers:


3

您可以使用~n,m变量的语法来获取子字符串。

Setlocal EnableDelayedExpansion

for /f "tokens=1" %%a in (symantecUsers.txt) do (
    set userid=%%a
    echo The first character is !userid:~0,1!
)

这适用于echo,但是如何将其存储在变量中?
Jineet Vora '16

同样的方式:set firstchar=!userid:~0,1!
Berend

@erreka这可能取决于您如何定义DOS :-)
Berend
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.