0

我目前有一个包含所有 AD 用户的文本文件。使用以下内容,我可以获得 PWD 到期日期的管道列表,但我无法将用户名与到期日期配对以确保准确性。有人可以帮忙吗?警告:需要批处理:(

        for /F %%i in (users.txt) do net user %%i /domain | find "Password expires" >> passwordexp.txt
4

2 回答 2

1

您已经拥有所需的所有信息,您只需将其打印出来 :-)

您可以使用括号在 DO 子句中执行多个命令。

您可以使用 SET /P 打印最后没有换行符的信息。

将整个构造括在括号中并将输出定向到文件一次会更有效。

@echo off
(
  for /F %%i in (users.txt) do (
    <nul set /p "=%%i: "
    net user %%i /domain | find "Password expires"
  )
)>passwordexp.txt
于 2012-05-18T15:26:48.210 回答
0

好的,我认为这对您有用:

要获取“用户名”,请执行以下操作:

    for /f "tokens=1-3*" %%a in ('net user administrator /domain ^| find "User name"') do @echo "%%a %%b" "%%c" & set uname=%%c

要获得“密码过期”,请执行以下操作:

    for /f "tokens=1-3*" %%a in ('net user administrator /domain ^| find "Passowrd expires"') do @echo "%%a %%b" "%%c" & set expires=%%c

要显示用户的状态,请执行以下操作:

    echo %uname% expires %expires%

这对您想要的有用吗(不要忘记将管理员更改为您的用户名)

于 2012-05-18T15:04:31.850 回答