日記/近況報告

PsExecの気色悪いつかいかた

投稿日:2015年1月29日 更新日:

こまごまとした作業タスクを消化していました。

バッチプログラムでわりと致命的な不備に直面しましたが、
力技で強引に回避しました。

一般権限のユーザから、他のバッチプログラムを管理者権限で実行する。
実行にはPsExecを利用する……そんな内容なのですが、
PsExecからバッチプログラムを実行した場合、「set /p」が
思わしくない動作をします。

具体的に書くと。set /pは本来、入力された文字列を変数に代入します。
PsExecを経由すると、1文字目しか代入されません。

しかも標準入力に改行コードか何かが挿入されているのかわかりませんが、
直後に再びset /pがあると、そちらは何も入力せずEnterを押した時の挙動になります。

まあPsExecを使ってはいますがネットワークは経由せず
ローカルで完結するものだったので、PsExec実行時に-iで
現在のセッションIDを指定し、同一セッションで管理者実行するようにしました。

……ここまで書いて、気づいてしまいました。
(……管理者権限ユーザでの動作確認しかしてないな?)という事実に。
通常権限ユーザで操作したら絶対上手く動かないぞ、これ。
別々のユーザで同一セッションIDを使おうとしているわけだし。

一応書いておくと、以下の行を実行することで
現在のセッションIDを取得することができます。
Win 2008/Vistaで確認しました。解説は省きます。
 for /f “tokens=3 delims= ” %%i in (‘query session^|findstr “^>”‘) do set SESSION_ID=%%i

ついでに、ウィンドウが複数残って鬱陶しかったので、
PsExecを実行したコマンドにさっさと消えてもらうよう細工しました。
こちらは同一ユーザ・同一セッションに対してPsExecするのが前提なので、
役に立つ機会はないでしょうけれど。めっちゃネストしてます。
 PsExec.exe cmd.exe /c start /i cmd.exe /c “起動対象バッチファイル”
このネスト具合をExcel関数風に記述すると、こうなります。
 PsExec(cmd(/c, start(/i, cmd(/c, “起動対象バッチファイル”))))

それにしても詰めが甘い……ですね……


記事をご覧頂き、ありがとうございました!
質問・意見・感想等ございましたら、気軽にお寄せください。

書いた人: 久世うりう (kuzeuriu)
お仕事のご依頼・お問い合わせは こちら

AdSense




AdSense




-日記/近況報告

執筆者:


  1. 川口 より:

    『set /pは本来、入力された文字列を変数に代入します。
    PsExecを経由すると、1文字目しか代入されません』 の部分ですが
    現在(2020/12)でも解決していないのですか?

  2. くぜうりう より:

    当時の業務から離れてしまっているため検証ができず申し訳ないのですが、
    この記事よりも後にPsExecが更新されているようなので、そちらの更新内容次第では解消されているかもしれません。

    ただ、2020年現在で対応をするとしたら、PowerShellなどへの置き換えを検討した方がよいかな…?と思います。
    (取り組まれる課題や対象システムにもよりますが!)

記事にコメントする(本文のみで投稿可能です)

関連記事

no image

楽しい作業をしたいです。

昨日の夜にお風呂に入って、お風呂から上がったら朝だった。 な……何を言っているのかわからねーと思うが、俺も何が起こったのかわからなかった…… ……どうやら本気で眠ってたっぽいです。 浴槽に浸かると眠っ …

no image

資金繰り?

……なんと。再び携帯停止フラグ。解決も出来なくはないんだが、来月はPCだしねぇ。使えません使っちゃいけません。 たとえ三月星を買おうがカラオケに行こうが、携帯料金級は払ったら緩衝材がない状況ですよ。 …

no image

送信したつもりが保存しとった!

ケンジ格好良すぎるだろっ……!いやーそれだけに切ない。そして腹立つ。 青田め……嫌な奴だな。汚い手段ばっか使ってないで自分をもっと磨けー!でなきゃ諦めろー! 誰かの犠牲の上に成り立つ幸せは本当の幸せじ …

no image

お、落ち着けない!9月待てない!

ソウルキャリバーがPSPで出るんすか!しかもキャラクリが強化ですか!超買いたい! まあでもたぶん買わないよ。今回はPCもすぐそこだからね。お金があればこれのためにPSP買い替えたいんだが。 9、10万 …

no image

キャーイクサーン

日本海沿岸に竜宮の使いが来たってよ!ゼリーのようにぷるぶるで、地元の漁師がいただいたがおいしくはなかったとさ! 帰宅時刻が帰宅時刻なもんで、というか疲れてたのだろう寝落ちてしまった。 その証拠にほら、 …

 久世うりう のブログ。好きなものを推して生きていく。ゲーム、アニメ、マンガ、えっちコンテンツ、なんらかの制作、日記など、そのとき最もノッてることを書いてます。商品リンクはだいたいアフィリエイト。

◆直近のイベント

直近のイベント

今後のイベントはありません

Twitter @kuzeuriu

アフィ枠!(素直)

○ノンデザイナーズ・デザインブック

「理解しやすい配置の基礎」をやさしくわかりやすく解説している本。初学者さん、思いがけずレイアウト・デザインの必要に駆られた方。デザイナーかノンデザイナーかを問わず、活かせるものを見つけられるかと思います。

2021年4月
 1234
567891011
12131415161718
19202122232425
2627282930