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

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

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

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

Q&A

解決済

1回答

9820閲覧

Windows PowerShellでWindows Task Schedulerのコマンドレットの一覧を取得したい。

ProgramMainInfo

総合スコア15

PowerShell

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

0グッド

0クリップ

投稿2016/08/20 08:13

**【背景】 **
Windows PowerShell ISEを使用してWindows Task Schedulerのコマンドレットの一覧を取得しようと
した所Errorが出て正常に取得する事ができませんでした。 原因を教えて貰えると助かります。


■使用したコマンド
Get-Command | where Name -like "ScheduledTask"

■結果
PS C:\Users\XXXX> Get-Command | where Name -like "ScheduledTask"
Where-Object : パラメーター 'FilterScript' をバインドできません。"Name" の値を "System.String" 型から "System.Management.Automation.ScriptBlock" 型に変換できません。
発生場所 行:1 文字:20

  • Get-Command | where <<<< Name -like "ScheduledTask"
    • CategoryInfo : InvalidArgument: (:) [Where-Object]、ParameterBindingException
    • FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerShell.Commands.WhereObjectCommand

【目的】
Windows Task Schedulerのコマンドレットの一覧を取得したい。
※絞り込みたいです。

**【環境】 **
[OS]
Windows7 Professional 32Bit 日本語OS

**【補足】 **
Windows PowerShell ISEは、管理者権限で起動し、実行ポリシーは、RemoteSignedにしています。

**※ 試してみた事は、下記の通りです。 **
・Windows7 Professional 32Bit 日本語OS で「Get-Command」のみで実行すると一覧がずらっと
表示する事は出来ました。

・Windows10 Professional 64bit 日本語OSでは、正常にWindows Task Schedulerの一覧が
表示されました。

・Windows8.1 Professional 64bit 日本語OSでは、正常にWindows Task Schedulerの一覧が
表示されました。

※Nameの値が変換できないのが原因だと思っています。

[正常例:Windows8.1]
CommandType Name ModuleName


Function Disable-ScheduledTask ScheduledTasks
Function Enable-ScheduledTask ScheduledTasks
Function Export-ScheduledTask ScheduledTasks
Function Get-ClusteredScheduledTask ScheduledTasks
Function Get-ScheduledTask ScheduledTasks
Function Get-ScheduledTaskInfo ScheduledTasks
Function New-ScheduledTask ScheduledTasks
Function New-ScheduledTaskAction ScheduledTasks
Function New-ScheduledTaskPrincipal ScheduledTasks
Function New-ScheduledTaskSettingsSet ScheduledTasks
Function New-ScheduledTaskTrigger ScheduledTasks
Function Register-ClusteredScheduledTask ScheduledTasks
Function Register-ScheduledTask ScheduledTasks
Function Set-ClusteredScheduledTask ScheduledTasks
Function Set-ScheduledTask ScheduledTasks
Function Start-ScheduledTask ScheduledTasks
Function Stop-ScheduledTask ScheduledTasks
Function Unregister-ClusteredScheduledTask ScheduledTasks
Function Unregister-ScheduledTask ScheduledTasks

【備考】
特に無いです。

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

PowerShellのバージョンによる違いです。
自分の環境はMicrosoft Windows 7 Home Premium (64ビット)にPower Shell 5をインストールしており、以下のコマンドでタスクスケジュール関連のコマンドを一覧表示できました。

ps1

1PS 19:25:46> gcm -Module PSScheduledJob 2 3CommandType Name Version Source 4----------- ---- ------- ------ 5Cmdlet Add-JobTrigger 1.1.0.0 PSScheduledJob 6Cmdlet Disable-JobTrigger 1.1.0.0 PSScheduledJob 7Cmdlet Disable-ScheduledJob 1.1.0.0 PSScheduledJob 8Cmdlet Enable-JobTrigger 1.1.0.0 PSScheduledJob 9Cmdlet Enable-ScheduledJob 1.1.0.0 PSScheduledJob 10Cmdlet Get-JobTrigger 1.1.0.0 PSScheduledJob 11Cmdlet Get-ScheduledJob 1.1.0.0 PSScheduledJob 12Cmdlet Get-ScheduledJobOption 1.1.0.0 PSScheduledJob 13Cmdlet New-JobTrigger 1.1.0.0 PSScheduledJob 14Cmdlet New-ScheduledJobOption 1.1.0.0 PSScheduledJob 15Cmdlet Register-ScheduledJob 1.1.0.0 PSScheduledJob 16Cmdlet Remove-JobTrigger 1.1.0.0 PSScheduledJob 17Cmdlet Set-JobTrigger 1.1.0.0 PSScheduledJob 18Cmdlet Set-ScheduledJob 1.1.0.0 PSScheduledJob 19Cmdlet Set-ScheduledJobOption 1.1.0.0 PSScheduledJob 20Cmdlet Unregister-ScheduledJob 1.1.0.0 PSScheduledJob

または

ps1

1PS 19:16:12> gcm *sched* 2 3CommandType Name Version Source 4----------- ---- ------- ------ 5Cmdlet Disable-ScheduledJob 1.1.0.0 PSScheduledJob 6Cmdlet Enable-ScheduledJob 1.1.0.0 PSScheduledJob 7Cmdlet Get-ScheduledJob 1.1.0.0 PSScheduledJob 8Cmdlet Get-ScheduledJobOption 1.1.0.0 PSScheduledJob 9Cmdlet New-ScheduledJobOption 1.1.0.0 PSScheduledJob 10Cmdlet Register-ScheduledJob 1.1.0.0 PSScheduledJob 11Cmdlet Set-ScheduledJob 1.1.0.0 PSScheduledJob 12Cmdlet Set-ScheduledJobOption 1.1.0.0 PSScheduledJob 13Cmdlet Unregister-ScheduledJob 1.1.0.0 PSScheduledJob 14Application MdSched.exe 6.1.760... C:\Windows\system32\MdSched.exe

Power Shellのバージョンは以下のコマンドで確認できます。

ps1

1PS 19:17:51> $Host 2 3 4Name : ConsoleHost 5Version : 5.0.10586.117 6InstanceId : f6376307-e654-43b5-8bb9-5d63c4b9fc45 7UI : System.Management.Automation.Internal.Host.InternalHostUserInterface 8CurrentCulture : ja-JP 9CurrentUICulture : ja-JP 10PrivateData : Microsoft.PowerShell.ConsoleHost+ConsoleColorProxy 11DebuggerEnabled : True 12IsRunspacePushed : False 13Runspace : System.Management.Automation.Runspaces.LocalRunspace

【参考】

投稿2016/08/20 10:27

編集2016/08/20 10:28
tkmtmkt

総合スコア1800

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ProgramMainInfo

2016/08/21 00:50

回答ありがとうございました。 「Host」コマンドを使用してVersionを確認した所「2.0」となっておりました。 そこで、「Win7-KB3134760-x86.msu」を使用してPowerShellのUpdateをかけた所、「5.0.10586.117」にする事が出来ました。 ちなみにですが、「Get-Command | where Name -like "*ScheduledTask*" 」を 実行した所、Errorにはならなかったですが、何も表示されない状態でした。 調べた所、Windows8/Windows Server2012以上でしか使えないみたいです。 色々な事が分かって助かりましたありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問