回答編集履歴

2

誤字修正

2019/03/01 08:29

投稿

kamikazelight
kamikazelight

スコア305

test CHANGED
@@ -16,7 +16,7 @@
16
16
 
17
17
  --追記--
18
18
 
19
- `FileInfo`のプロパティーを見たら`Path`が無くて代わりに`PsPath`なるものがあったので実験してみたした
19
+ `FileInfo`のプロパティーを見たら`Path`が無くて代わりに`PsPath`なるものがあったので実験して見ました
20
20
 
21
21
  コード
22
22
 

1

追記

2019/03/01 08:29

投稿

kamikazelight
kamikazelight

スコア305

test CHANGED
@@ -9,3 +9,91 @@
9
9
  上記のこともあり経験則上
10
10
 
11
11
  `FileInfo`等をパイプラインで渡した場合は`-LiteralPath`が使われているのではないかと思います。
12
+
13
+
14
+
15
+
16
+
17
+ --追記--
18
+
19
+ `FileInfo`のプロパティーを見たら`Path`が無くて代わりに`PsPath`なるものがあったので実験してみたした
20
+
21
+ コード
22
+
23
+ ```powershell
24
+
25
+ Write-Host "`nパターンA"
26
+
27
+ [PsCustomObject]@{
28
+
29
+ PsPath = "Microsoft.PowerShell.Core\FileSystem::D:\Users\Desktop["
30
+
31
+ } | Remove-Item -WhatIf
32
+
33
+
34
+
35
+ Write-Host "`nパターンB"
36
+
37
+ [PsCustomObject]@{
38
+
39
+ Path = "D:\Users\Desktop["
40
+
41
+ } | Remove-Item -WhatIf
42
+
43
+
44
+
45
+ Write-Host "`nパターンC"
46
+
47
+ @("D:\Users\Desktop[") | Remove-Item -WhatIf
48
+
49
+ ```
50
+
51
+
52
+
53
+ 結果
54
+
55
+ ```
56
+
57
+ パターンA
58
+
59
+ WhatIf: 対象 "D:\Users\Desktop[" に対して操作 "ファイルの削除" を実行しています。
60
+
61
+
62
+
63
+ パターンB
64
+
65
+ Remove-Item : 指定されたワイルドカード文字パターンは無効です: [
66
+
67
+ 発生場所 行:9 文字:5
68
+
69
+ + } | Remove-Item -WhatIf
70
+
71
+ + ~~~~~~~~~~~~~~~~~~~
72
+
73
+ + CategoryInfo : NotSpecified: (:) [Remove-Item], WildcardPatternException
74
+
75
+ + FullyQualifiedErrorId : RuntimeException,Microsoft.PowerShell.Commands.RemoveItemCommand
76
+
77
+
78
+
79
+
80
+
81
+ パターンC
82
+
83
+ Remove-Item : 指定されたワイルドカード文字パターンは無効です: [
84
+
85
+ 発生場所 行:12 文字:27
86
+
87
+ + @("D:\Users\Desktop[") | Remove-Item -WhatIf
88
+
89
+ + ~~~~~~~~~~~~~~~~~~~
90
+
91
+ + CategoryInfo : NotSpecified: (:) [Remove-Item], WildcardPatternException
92
+
93
+ + FullyQualifiedErrorId : RuntimeException,Microsoft.PowerShell.Commands.RemoveItemCommand
94
+
95
+ ```
96
+
97
+
98
+
99
+ どうでしょうか?