web-dev-qa-db-ja.com

Powershell New-Item:確認を自動的に受け入れる方法

PowerShellスクリプトを使用してネットワークドライブに新しいディレクトリを作成しようとしていますが、プロンプトが表示され続けます

「確認:このアクションを実行してもよろしいですか...」

これをオーバーライドする方法はありますか?Webインターフェイスからこのスクリプトを実行しているので、質問されません。

これが私の電話です:

New-Item $rollbackDirectory -type Directory -Force

-Forceパラメータの有無にかかわらず、同じことを行います

私もこのフォーマットを運なしで試しました

New-Item -name $rollbackName -itemtype directory -path $rollbackdrive -Debug -Force
16
Evan Layman

-confirmを指定する必要があるのは、コマンドレットで確認を求める場合のみです。コマンドレット自体が確認を求めるかどうかは、コマンドレットの開発者がその効果に基づいてコマンドレットの高、中、低を設定できるかどうかに依存します。 $ConfirmPreferenceの値に基づいて、コマンドレットの確認を自動的に取得します。 $ConfirmPreferenceのデフォルト値は高く、New-Itemに設定されているレベルは中程度です。したがって、New-Itemが確認を求めている場合、$ConfirmPreferenceの値は中または低に変更されている必要があります。

$ConfirmPreference="high"または$ConfirmPreference="none"を使用してこれを変更し、New-Itemがプロンプトを出さないようにするか、-confirm:$falseのソリューションが$ConfirmPreferenceをオーバーライドすることによっても機能します。

ここで完全に説明されています: http://blogs.msdn.com/b/powershell/archive/2006/12/15/confirmpreference.aspx

これで問題が解決することを願っています。

19
manojlds

私はこれを試してしまいました(別のSO投稿が正しくないことを読んでも):

New-Item $rollbackDirectory -type Directory -Force -Confirm:$false

そしてそれはうまくいった!これが同じ問題を持つ他の人を助けることを願っています

11
Evan Layman