• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PowerShellで処理を簡単にしたい)

PowerShellで処理を簡単にする方法

dell_OKの回答

  • dell_OK
  • ベストアンサー率13% (744/5658)
回答No.2

一瞬で終了していると何が起こっているかわからないですね。 バッチファイルの最後に、 PAUSE を追加して、いったん止まるようにしてみてください。 エラーかなにか表示されているかも知れません。

NuboChan
質問者

補足

以下のBATで試して見ましたが BATは止まらずに同じで一瞬で終了します。 (エラーは、表示されません。) powershell -ExecutionPolicy RemoteSigned -File C:\Users\Mic\Desktop\Keep\sample.ps1 pause 最初の以下でそもそも落ちているのかもしれません。 powershell -ExecutionPolicy RemoteSigned -File C:\Users\Mic\Desktop\Keep\sample.ps1

関連するQ&A

  • powershellをバックグラウンド実行

    いつもお世話になっております。 とあるpowershellをバックグラウンド実行したいのですが、うまくいきません。 【実施したいこと】 background.ps1をバックグラウンド実行したい。 【前提条件】 background.ps1はbackground.batファイルより実行する想定で考えている。 background.batの中身(イメージ) (中略) powershel l-command "background.ps1" (中略) get-executionpolicyではremotesignedで~ps1ファイルは実行許可を与えている。 【確認していること】 1.start-jobコマンドを使用すればバックグラウンド実行ができることを確認済み 2.batの実行を以下にするも実行がうまくいかない。 powershell -executionpolicy remotesigned -command "start-job background.ps1" 3.間にpowershellをバックグラウンドするbackground_middle.ps1をかませてもうまくいかない。 batのコマンド実行をbackground_middle.ps1にし、background_middle.ps1を start-job backgroundと記載しており実行してもうまくいかない。 4.powershell上でstart-job background.ps1を手動で実施するとうまく実行される。 申し訳ございませんが、大変困っており、すぐ回答を頂きたいです

  • PowerShell

    PowerShellについてです。 スクリプトを実行するために、実行ポリシーを以下のコマンドで、RemoteSignedに変更しようとすると、エラーで変更できません。どのようにすれば変更できるかわかる方いませんか。 --------------------------------------------------------------- Set-ExecutionPolicy RemoteSigned --------------------------------------------------------------- エラーメッセージ: Set-ExecutionPolicy : レジストリ キー 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell ' へのアクセスが拒否されました。 発生場所 行:1 文字:20 + set-executionpolicy <<<< RemoteSigned --------------------------------------------------------------- <<環境>> Vista 32bit

  • PowerShellからPowerShellを呼び出す方法

    PowerShellからPowerShellを呼び出す方法 次のバッチファイルと同等の事をPowerShellで行う方法を教えて下さい。 下記のような非常に簡易的なバッチファイルがあるとします。 ■ aaa.bat ■ echo test ■ aaa.bat ■ ■ bbb.bat ■ aaa.bat > aaa.log ■ bbb.bat ■ ■ コマンドプロンプト ■ cmd> aaa.bat ・・・ 下に「test」と出力される test cmd> bbb.bat ・・・ ファイルaaa.logに「test」と出力される ■ コマンドプロンプト ■ 同じ事をPowerShellでするとすれば ■ aaa.ps1 ■ echo "test" ■ aaa.ps1 ■ ■ PowerShellの画面から ■ PS > ./aaa.ps1 ・・・ 下に「test」と出力される test PS > ./bbb.ps1 ・・・ ファイルaaa.logに「test」と出力される ■ PowerShellの画面から ■ この時の「bbb.ps1」はどのようになりますか?

  • PowerShellのスクリプト実行について

    PowerShellのスクリプト実行について PowerShellの勉強をしていますが、スクリプトを実行できません。。。 なんか、スクリプトの環境変数を設定するようですが、どこにも 設定方法がないです。。。。 もちろん、Set-ExecutionPolicy Unrestrictedは実行してあります。 以下日付と時間を表示するだけのスクリプトです。 ---------test.ps1--------- get-date get-time ---------------------------- スクリプトファイルの置き場所 ⇒ C:\script-test\test.ps1 ちなみに、スクリプトファイルを置いたディレクトリに移動して 実行しても、以下のようなメッセージが出て実行できませんでした。。 用語 'C:\script-test' は、コマンドレット、関数、スクリプト ファイル、または操作 可能なプログラムの名前として認識されません。名前が正しく記述されていることを確 認し、パスが含まれている場合はそのパスが正しいことを確認してから、再試行してく ださい。 発生場所 行:1 文字:15 + C:\script-test <<<< .\test.ps1 + CategoryInfo : ObjectNotFound: (C:\script-test:String) []、Comma ndNotFoundException + FullyQualifiedErrorId : CommandNotFoundException どなたかご教授下さい。

  • Powershellで事項ファイルを作りたい

    #(1)powershellの実行ポリシー変更 Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned -Force #(2)01_Kittingフォルダへの移動 net use X: \\filesever\user\01_Kitting pushd \\fileserver\user\01_Kitting 上記コマンドをPowerShell(管理者)内で実行したいのですがどうしたら良いでしょうか? 宜しくお願い致します。

  • PowerShellからBATに制御を戻す方法

    【環境】 OS:Windows Server 2008 R2 SP1 【状況】 BATファイルにてメニューを作成しており、表示されたメニューの中からPowerShellで作成したテストイベントを送信するスクリプトを実行するための番号を入力後、Enterキーを押すとテストイベントが送信されるようになっております。 PowerShellが実行された後、呼び出し元のBATファイルに戻りメニューを表示させたいと考えておりますが、PowerShellが実行完了後、BATファイルに戻りません。 ※ JP1の動作定義ファイル(ntevent.conf)を修正しており、修正したフィルタが正常に動作することおよび既存のフィルタが影響がないかを確認するためにBATファイルからPowerShellでテストイベントを発行するためにBATおよびPowerShellでプログラムを作成しております。 【ご教示頂きたい点】 PowerShellが実行後、BATファイルに戻り、メニューを表示させるようにしたいと考えており、どのようにしたらBATに制御を戻すことができるかご教示頂けますでしょうか。

  • PowerShellを使ってキッテッングがしたい

    下記のコマンドをPowerShell(管理者)でテキストファイルからコピペして実行しています。 #(1)powershellの実行ポリシー変更 Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned -Force #(2)01_Kittingフォルダへの移動 net use X: \\filesever\user\01_Kitting pushd \\fileserver\user\01_Kitting 上記を例えば¥D(USB等)でPowerShell(管理者)を立ち上げて実行できるようなバッチファイル?を作りたいと思っていました。 01_Kittingの中にはキッテッングをするメニューが01~09まであり、PowerShell(管理者)で01と入力してTabを打つと01のメニューが実行できるようになります。 こんな都合よいバッチファイル?が出来るかわかりませんが、何卒、ご助言をいただければ幸いです。 何卒よろしくお願い申し上げます。

  • powershellの変数の扱い方

    cmdshell(bat)からpowershell(ps1)に移行しようと勉強しているものです。 ごく初歩的なことだと思うのですが、わからないので質問します。 環境はWindows8.1、PowerShell ISEを使用しています。 下記のように引数を実行ファイルに渡すと、渡したファイルが操作されます。 ------------------------------- D:\...\abc.exe $Args ------------------------------- これであれば正常に機能するのですが、 ------------------------------- $abc = "D:\...\abc.exe" $abc $Args ------------------------------- とするとエラーになってしまいます。 これは一体なぜなのでしょうか。 解決方法をご教授願いたいと思います。よろしくお願いします。

  • powershellどんなファイル名でも取得したい

    本来はps1ファイルにドロップして実行したい動作があるのですが、 通常できないのでbatを仲介役として実行しています。 問題はファイル名によっては正常に読み込まれない事があります。 まず、以下がbatファイルの内容として、 [123.bat]-------------------------- @echo off powershell "D:\...\ABC.ps1" ""%1"" ------------------------------------- ps1ファイルは以下の内容とします。 [ABC.ps1]-------------------------- "$Args" ------------------------------------- 123.batにファイルをドロップすると""%1""として、 ABC.ps1へ渡されます。 しかし、ファイル名によっては途中で途切れてしまい正常に読み込めません。 ・半角丸括弧の場合 例えば「D:\...\(1).txt」と言うファイルをドロップすると、 batでは「""D:\...\(1).txt""」と認識されるも、 ps1では「D:\...\」となり、親パスまでしか認識されません。 但し、ファイル名によっては丸括弧が存在していても問題ない場合があります。 また、理由は不明ですが123.batの「""%1""」を「"""%1"""」のように、 ダブルクォートを3つにすると認識し正常に動作が可能となります。 ・半角&の場合 例えば「D:\...\りんご&みかん.txt」と言うファイルをドロップすると、 batとpa1ともに「D:\...\りんご」で後半がとぎれます。 これはダブルクォートが3つでも同じです。 他にもいくつか存在すると思いますが、 どんなファイル名でも単純な文字列として取得する方法あるでしょうか。 ファイル名自体を変更して解決はできないです。 どなたかご教授のほどよろしくお願いいたします。

  • PowerShellのスクリプト実行方法

    PowerShellを勉強しようと思い、PowerShell ISEを起動して、色々なコマンドを実行していました。 今度はテキストエディタでコマンドを書いて、「myPSCommand.ps1」というファイルをCドライブ直下に配置しました。 下記のサイトを参考に環境変数にPATHを通しました。 http://www.oborodukiyo.info/PowerShell/v20/PS-EnviromentPath.aspx そして、ファイルをダブルクリックしたら、メモ帳が起動してきました・・・ 調べたら、下記のサイトが見つかりました。 http://www.atmarkit.co.jp/ait/articles/0709/20/news125.html セキュリティの為に、PowerShellからスクリプトを呼び出す必要があると書いてありました。 やりたい事は、あるファイルをバックアップしたいと思います。 スクリプトにコマンドを書き込んで、タスクスケジューラーで特定の時間がくると、ファイルをバックアップするような事をしたいと思います。 ただ、今の状態だとタスクスケジューラーに「myPSCommand.ps1」を指定すると、その時間がくるとメモ帳が開いてしまいます。 スクリプトのみが実行されるには、どのようにすればよろしいでしょうか?