LoginSignup
2
1

More than 1 year has passed since last update.

スクリプトをバッチでたたく方法

Last updated at Posted at 2021-10-09

まえがき

どもこんにちは、そこらへんにいるぺーぺーエンジニアです。
仕事の効率化でよく使うので、備忘として残そうかなという経緯です。

スクリプト(ps1)の作成 (๑╹ω╹๑ )

powershell

#[Cドライブ]に[work\logs]フォルダを作成する。
mkdir C:\work\logs

#{コマンド[hostname]の出力結果を[C:\work\logs]フォルダ内の[testlog.txt]ファイルに保存する。}という処理内容を[test.txt]ファイルとして新規作成、保存する。
echo "hostname >> C:\work\logs\testlog.txt" >> C:\work\test.txt

#[test.txt]を[test.ps1]に名前変更(正確にはファイル拡張子を変更)する。
mv C:\work\test.txt C:\work\test.ps1

バッチ(bat)の作成 (๑╹ω╹๑ )

powershell
#{[C:\work\test.ps1]をpowershellで実行する。]という処理内容を[testbat.txt]ファイルとして新規作成する。
echo "@echo off" ` "REM [C:\work\test.ps1]をpowershellで実行する。" ` "powershell C:\work\test.ps1" >> C:\work\testbat.txt

#[testbat.txt]ファイルをバッチ(bat)ファイルに拡張子を変更する。
mv C:\work\testbat.txt C:\work\testbat.bat

バッチ(bat)のショートカットファイルの作成 (๑╹ω╹๑ )

powershell
#以下の4行をそのまま[powershell]上にコピー&ペーストし、実行する。
$WshShell = New-Object -ComObject WScript.Shell
$ShortCut = $WshShell.CreateShortcut("C:\work\testbat.bat.lnk")
$ShortCut.TargetPath = "C:\work\testbat.bat"
$ShortCut.Save()

##上記の一部を解説するよ (๑╹ω╹๑ )
###[CreateShortcut]で指定しているパスは、作成するショートカットファイルを指している。
###[TargetPath]で指定しているパスは、ショートカットファイルを作成する元ファイルを指している。

#[C:\work\testbat.bat.lnk]が作成されていることを確認する。
ls C:\work

バッチ(bat)のショートカットファイルの設定 (๑╹ω╹๑ )

デスクトップGUI操作
1. [C:\work]フォルダにあるショートカットファイル[testbat.bat]のプロパティを開く。
2. [ショートカット]タブ内の[詳細設定]をクリックする。
3. [管理者として実行]にチェックを入れる。
4. [OK]をクリックする。
5. [適用]及び[OK]をクリックする。 

補足:Windows PowerShell で上記の設定ができないかどうか調査中。
何か見つかり次第、追加の方法として追記する。

バッチ(bat)のショートカットファイルの実行!! (๑╹ω╹๑ )

powershell
#バッチ(bat)のショートカットファイルの実行!! (๑╹ω╹๑ )
C:\work\testbat.bat.lnk

#[このアプリがデバイスに変更を加えることを許可しますか?]のGUI画面が表示されるので[はい]をクリックする!(๑╹ω╹๑ )

#[C:\work\logs]フォルダに[testlog.txt]ファイルが作成されていることを確認する。
ls C:\work\logs

#[testlog.txt]ファイルを開き、[hostname]の出力結果があることを確認する。
C:\work\logs\testlog.txt

あとがき

おつかれさまでしたなのだ! (๑╹ω╹๑ )
気づいたら深夜2時だと…!?(´Д⊂ヽ
手探りしながら手順を書いていたので、こちらお試しになられて手順通りにうまくいった方いましたら、コメントお願い致します。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1