以前、リモートWindows PC上のコマンドを実行するPSExec.exe コマンドを使って、リモートWindowsノートPCのバッテリー情報を入手するメモを書きました。
今回は、リモートWindows PCのフォルダー内容を知るために dir コマンドを発行する必要に迫られました。
PsExecコマンドを使えばいいだろうと、軽く考えていたのですが、powercfg.exe のようにコマンドが単体のファイルである場合と違い、dir コマンドは exe ファイルではなく、DOSシェル内蔵コマンド。
どのように書けばいいのか?
powercfg.exe の場合は、
PsExec \\remote_pcname powercfg -ENERGY -DURATION 1 -OUTPUT C:\TEMP\pcname.html
と書いたので、
PsExec \\remote_pcname dir c:\users
と書けばいいのかと思ったら、これだと、動かない。
ではどう書けばいいのか?と、Web検索してみたら、
PsExec.exe \\remote_pcname cmd /c "dir c:\users"
と、書く必要があるようです。cmd.exe を起動して、その中で dir を発行するということ。
PsExec.exe \\remote_pcname cmd /c "dir /OD c:\users"
ファイルを日付でソートするには、/OD を付加。
要するに、「PsExec.exe \\remote_pcname cmd /c 」と書いて、その後に、ダブルクォート “” で囲んでコマンドを書けばいいってこと。