現在、すべての AD ユーザーを含むテキスト ファイルがあります。以下を使用して、PWD の有効期限のパイプ リストを取得できますが、正確性のために有効期限と組み合わせたユーザー名を取得できません。誰でも手伝ってもらえますか? 警告:バッチである必要があります:(
for /F %%i in (users.txt) do net user %%i /domain | find "Password expires" >> passwordexp.txt
現在、すべての AD ユーザーを含むテキスト ファイルがあります。以下を使用して、PWD の有効期限のパイプ リストを取得できますが、正確性のために有効期限と組み合わせたユーザー名を取得できません。誰でも手伝ってもらえますか? 警告:バッチである必要があります:(
for /F %%i in (users.txt) do net user %%i /domain | find "Password expires" >> passwordexp.txt
必要なときに必要な情報がすべて揃っているので、印刷するだけです:-)
かっこを使用して、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
わかりましたこれはあなたのために働くと思います:
「ユーザー名」を取得するには、次のようにします。
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%
それはあなたが望むもののために機能しますか(管理者をあなたのユーザー名に変更することを忘れないでください)