ログイン時にユーザーのダウンロードフォルダを空にする方法

ログイン時にユーザーのダウンロードフォルダを空にする方法

簡単な作業のように思えますが、私の解決策はどれもうまくいきませんでした。通常のユーザーがいる通常の AD ドメイン。非ローミング プロファイルのターミナル サーバーを使用しているため、すべてが TS ディスクに保存されています。ログイン時にダウンロード フォルダーを空にしたいのですが、ユーザーが自分でダウンロード フォルダーを空にすることはなく、ディスクがいっぱいになるのにうんざりしています。

したがって、当然のことながら、単純な PowerShell スクリプトを作成し、ログオン時にそれを実行する GPO を作成します。問題は、ps スクリプトには昇格が必要であり、ログオン スクリプトはそのユーザーのアクセス許可レベルで実行されるため、昇格できないことです。

PS の行は次のとおりです。

Get-ChildItem C:\Users\*\Downloads\* | Remove-Item -Force

昇格された PowerShell インスタンスから手動で実行するとうまく機能します。

GPO は不要です。次に考えるのは、各ターミナル サーバーにスケジュールされたタスクを作成し、管理者権限を持つサービス アカウントで実行することです。

問題は、各ユーザーのダウンロード フォルダーを空にすることができず、サービス アカウントのダウンロード フォルダーのみを空にできることです。

したがって、各ユーザーのダウンロード フォルダー パスを .ps1 ファイルに静的に入力することは望ましくありません。明らかに、管理上の悪夢となるからです。

それで、誰か知っていますか:

  1. スクリプトを実行せずに、GPO を介してユーザー ログイン時にダウンロード フォルダーを空にする方法。または
  2. 各ユーザーの名前を指定せずに、各ユーザーのフォルダーを再帰的に検索し、ダウンロード フォルダーを見つけて空にするようにスクリプトを改善する方法。

これを簡単に行うにはどうすればいいでしょうか? ありがとうございます

答え1

ユーザー ログオン スクリプトの問題は、そのコマンドを使用していた場合、すべてのユーザーのダウンロード コンテンツを削除しようとしていたことです。

特定のユーザーのダウンロードを削除したいはずです。ダウンロードがプロファイル ディレクトリにある場合は、次の操作を行います。

Get-ChildItem $env:USERPROFILE\downloads | Remove-Item -recurse

Powershell の実行ポリシーに応じて、スクリプトまたはセットに署名する必要がある場合があります-ExecutionPolicy Bypass。ログオン スクリプトで Powershell を実行する方法については、多くのアドバイスがあります。

昔ながらのバッチ ファイルで実行する場合は、次のようにするだけです。

rd /s /q %USERPROFILE%\Downloads\*
del /q  %USERPROFILE%\Downloads\*.*

関連情報