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

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

新規登録して質問してみよう
ただいま回答率
87.20%
PowerShell

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

解決済

Powershellでの実行方法について

jackal1978
jackal1978

総合スコア29

PowerShell

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

1回答

0リアクション

0クリップ

521閲覧

投稿2022/08/01 02:54

編集2022/08/01 14:53

前提

Poweshellの実行方法について
「XX.ps1」を開くでテキストをすべてコピーを行い、powershellの画面を開いて貼り付けを行ってスクリプトを
実行させると問題なくスクリプトは動作しますが、「XX.ps1」を右クリックで「Powershellで実行」を行うと
うまく動作をしてくれません。
関係はあるか不明ですが編集でスクリプトを見たときに日本語の部分が文字化けしていることも確認しました。

実現したいこと

「XX.ps1」を右クリックして「Powershellで実行」をクリックしてスクリプトが動くようにしたい。

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

一瞬画面が立ち上がりすぐに画面が落ちてしまう。 下記のソースコードのここから~ここまでの間のどの行に「pause」をいれても止まることはありませんでした。

該当のソースコード

下記の「--ここから~ここまで----」のスクリプトが入っていると最終行のストップをかけていてもpowershellが落ちてしまいます。 $TargetLogFolder = "C:\copy" ---ここから if(-not (Test-Path $TargetLogFolder)){ Add-Type -Assembly System.Windows.Forms [System.Windows.Forms.MessageBox]::Show("ファイルが存在していません。","注意","OK","Warning","button3") EXIT } ---ここまで $g = "C:\hoge" $o = Get-Date -format "yyyyMMdd_HHmmss" New-Item $g\"$o.txt"

試したこと

実行権限のポリシーの変更
⇒RemoteSignedへ変更をしました。
文字化けについてはchcpコマンドで65001や932へは変更済です。
コマンドプロンプトからpowershellへ変更しても動作しません。
サイトを色々調べてみましたが当てはまりそうな不具合が見つけられませんでした。

補足情報(FW/ツールのバージョンなど)

当方Powershellの使い方については初心者なのでご教示ください。

以下のような質問にはリアクションをつけましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

リアクションが多い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

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

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

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

novelistory

2022/08/01 03:21

>発生している問題・エラーメッセージ >一瞬画面が立ち上がりすぐに画面が落ちてしまう。 ⇒すぐに画面が落ち、処理が実行されていないのでしょうか。  それとも画面が落ちるだけで処理は実行されているのでしょうか。 >該当のソースコード >ソースコード 「XX.ps1」の中身の記載がございません。 記載した方が皆さん回答しやすいかと思います。 実際に試していないこと、ご容赦ください。 調べたところ以下記述を見つけました。 参考になりましたら幸いです。 ■右クリックメニューの「PowerShell で実行」を拡張する http://www.vwnet.jp/windows/w10/2015121601/ExtendRightClickMenu.htm >ところが、この右クリックメニューの「PowerShell で実行」は、実行後 PowerShell プロンプトを閉じてしまうので使い勝手が良いものではありません。そこで、スクリプト実行後にプロンプト閉じないようにする -NoExit オプションを以下レジストリに付加します。
ccc-

2022/08/01 03:33

$a = 1 $b = 1 $c = $a + $b Write-host $c pause # ← 最後に pause を付ける
dodox86

2022/08/01 08:15

pauseコマンドはコマンドレットではなくコマンドプロンプト(cmd.exe)の内部コマンドなので、実行する際の形態によっては効かないかもです。

まだ回答がついていません

会員登録して回答してみよう

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

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

PowerShell

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