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 に答える