3流プログラマのメモ書き

元開発職→社内SE→派遣で営業支援→開発戻り浦島太郎状態の三流プログラマのIT技術メモ書き。 このメモが忘れっぽい自分とググってきた技術者の役に立ってくれれば幸いです。

(バッチ)一般ユーザ権限で、別ユーザのプロセスを落とす

バッチファイルで特定のプロセスを終了するコマンドを書いてたんですが、管理者権限が無いユーザだと別ユーザで動いているプロセスは落とせません。

しかし、RUNASというコマンドを使うと任意のユーザ権限でコマンドが発行できるようです。

使い方はこんな感じです。

runas /user:ドメイン名\ユーザ名 "taskkill /im xxx.exe"

しかし、これだとパスワードを聞かれてしまい、使用中にユーザに意識させずに...ということはできません。

echo パスワード|runas .... とか、リダイレクトとか試しましたがその場合認証に失敗します。

で結局、/savecred オプションを使うことにしました。

このオプションを付けて実行すると初回だけはパスワードを要求されますが、次回からは要求されません。

ただ、XP の Home Editionでは使用できないようです。

runas /savecred /user:ドメイン名\ユーザ名 "taskkill /im xxx.exe"

参考:

runas実行した時にきかれるパスワードを手入力以外で読み込ませたい