質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.02%
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

PowerShell

Windows PowerShellはコマンドラインインターフェースであり、システム管理を含むWindowsタスク自動化のためのスクリプト言語です。

バッチファイル

バッチファイル(Batch File)は、Windowsのコマンドラインインタープリターによって複数のコマンドを実行させる事が出来るスクリプトファイルです。

Q&A

解決済

コマンドプロンプトから管理者権限でファイルをコピーしたい

noringojp
noringojp

総合スコア15

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

PowerShell

Windows PowerShellはコマンドラインインターフェースであり、システム管理を含むWindowsタスク自動化のためのスクリプト言語です。

バッチファイル

バッチファイル(Batch File)は、Windowsのコマンドラインインタープリターによって複数のコマンドを実行させる事が出来るスクリプトファイルです。

1回答

0グッド

0クリップ

18612閲覧

投稿2016/12/22 12:44

編集2016/12/23 01:40

###前提・実現したいこと

Windows10のPCで、バッチファイルにてC:\Program Files配下へファイルをコピーしたい。
ユーザの利用上UACをオフにできないため、管理者権限にて実行をしたい。
そのため、コマンドプロンプトからpowershellを管理者権限で実行しようとしています。


追加で質問させてください。ユーザへコマンドプロンプトの画面を見せたくないため、
上記バッチファイル(cope.bat)を実行するcopy.vbsを作成しましたが、画面が一瞬表示されてしまいます。
これを表示させなくする方法はありますでしょうか。

###発生している問題・エラーメッセージ

@powershell -NoProfile -ExecutionPolicy unrestricted -Command "Start-Process xcopy.exe /Y sample.vbs "%ProgramFiles%\ -Verb runas"

エラーメッセージ
Start-Process : 引数 'sample.vbs' を受け入れる位置指定パラメーターが見つかりません。
発生場所 行:1 文字:14

  • Start-Process <<<< xcopy.exe /Y sample.vbs C:\Program Files\ -Verb runas
    • CategoryInfo : InvalidArgument: (:) [Start-Process]、ParameterBindingException
    • FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.PowerShell.Commands.StartProcessCommand

###該当のソースコード

copy.bat

@powershell -NoProfile -ExecutionPolicy unrestricted -Command "Start-Process xcopy.exe /Y sample.txt "%ProgramFiles%\ -Verb runas"

copy.vbs

set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c .\copy.bat",vbhide,True

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

回答1

0

ベストアンサー

こんな感じで如何でしょうか。
@powershell -NoProfile -ExecutionPolicy unrestricted -Command "Start-Process -FilePath xcopy.exe -ArgumentList '/Y (コピー元ファイルのフルパス) \"%ProgramFiles%\"' -Verb runas -WindowStyle Hidden"

追加質問の分についてはvbsを使わずとも-WindowStyle Hiddenで対応可能だと思います。
Start-Processの使い方はPowershell上でGet-Help Start-Processを実行すれば色々出てきます。

投稿2016/12/22 14:40

編集2016/12/23 02:27
yunano

総合スコア841

下記のような回答は推奨されていません。

  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

回答へのコメント

noringojp

2016/12/23 01:39

ありがとうございます。無事にファイルをコピーすることができました。
noringojp

2016/12/23 02:01

追加でサイレントで実行する方法について質問を追加しました。
yunano

2016/12/23 02:28

追加質問の分に対応しました。
noringojp

2016/12/23 03:43

-WindowStyle Hiddenを加えたところ、copy.batを実行すると画面が出てしまいましたが、 copy.vbsから実行したところ、完全に表示されなくなりました。 大変勉強になりました。ありがとうございました。

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.02%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

PowerShell

Windows PowerShellはコマンドラインインターフェースであり、システム管理を含むWindowsタスク自動化のためのスクリプト言語です。

バッチファイル

バッチファイル(Batch File)は、Windowsのコマンドラインインタープリターによって複数のコマンドを実行させる事が出来るスクリプトファイルです。