ちょっとしたツールでダイアログで入力するために使ってました
bat ファイルはこんな感じで書いておきます
wscript xxx.vbs
xxx.vbs の方はこういう感じです
Dim shell, txt
txt = InputBox("テキスト")
IF Len(Trim(txt)) Then
Set shell = WScript.CreateObject("WScript.Shell")
shell.Run "cmd.exe /c some-command --option " & txt & " & pause"
End If
これで入力用ダイアログが出て ユーザーの入力を受け取ってコマンドに埋め込めます
地味に便利なんですよね
コマンドラインを使えない人向けにもできますし
ただ VBScript が将来的に消えるなら PowerShell に置き換えたほうがいいのかもしれません
たぶんこんなので同じ動きになりそう
bat ファイル
powershell -NoProfile -ExecutionPolicy Unrestricted xxx.ps1
xxx.ps1
Add-Type -AssemblyName "Microsoft.VisualBasic"
$txt = [Microsoft.VisualBasic.Interaction]::InputBox("テキスト")
if ($txt.trim().length) {
some-command --option $txt
pause
}
VBScript より読みやすいしこっちでいいかな