我试图将每个标记从我拥有的 txt 文档中分离出来,并回显每个单词。问题是每个标记之间的空格数量不同。例如:
Administrator____________User 1______________Guest
“_”各代表一个空格,例如。 administrator 和 user 1 之间有 12 个空格,user 1 和 gues 之间有 16 个空格。
如果出现以下情况,我如何使用批处理脚本分别回显其中的每一个:
1)文件是“C:\Usernames.txt” 2)都在txt文件的第一行
我试过:
FOR /F "delims=" %A IN (C:\Usernames.txt) DO ECHO %A
我得到的只是“管理员”的回应。任何帮助是极大的赞赏。谢谢!
编辑:
通过在 for 循环中加入一个 for 循环,我可以更接近一点。我的代码是
FOR /F "delims=" %A IN (C:\Usernames.txt) DO FOR %B IN (%A) DO ECHO %B
这让我可以将它分成 4 个部分,但我需要三个部分。我得到了:
Administrator, User, 1, Guest
我怎样才能让 User 和 1 加入成为 User 1?
最佳答案
这可能有效:它依赖于每个用户名之间至少有两个空格,并且没有用户名包含两个连续的空格。
net user |find " "|repl " {2,50}" "\r\n" x
这使用一个名为 repl.bat
的辅助批处理文件(由 dbenham 提供)- 下载自:https://www.dropbox.com/s/qidqwztmetbvklt/repl.bat
将 repl.bat
放在与批处理文件相同的文件夹中或路径上的文件夹中。
关于batch-file - 批处理文件 - 多个空格的分隔符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25070320/