フォルダー内の M*,S* に一致するファイルがあります。
PS E:\Uploader> dir M*,S*
Directory: E:\Uploader
Mode LastWriteTime Length Name
---- ------------- ------ ----
----- 6/05/2013 10:43 AM 5046659 M_1813O.zip
-a--- 26/04/2013 4:51 PM 233 SurveyUploader.config
-a--- 8/05/2013 5:15 PM 11788 SurveyUploader.log
-a--- 8/05/2013 5:15 PM 6078 SurveyUploader.ps1
----- 6/05/2013 10:43 AM 3473113 S_1813O.zip
このフィルターを変数で gci に渡したいだけですが、うまくいきません:
PS E:\Uploader> $k="M*,S*"
PS E:\Uploader> gci *.* -include $k | where {!$_.PsIsContainer}
PS E:\Uploader> gci *.* -include @($k) | where {!$_.PsIsContainer}
<<no files returned!>>
フィルターを変数に保存しないと、正常に機能します。
PS E:\Uploader> gci *.* -include S*,M* | where {!$_.PsIsContainer}
Directory: E:\temp\SurveyLoadingAutomation\Uploader
Mode LastWriteTime Length Name
---- ------------- ------ ----
----- 6/05/2013 10:43 AM 5046659 M_1813O.zip
-a--- 26/04/2013 4:51 PM 233 SurveyUploader.config
-a--- 8/05/2013 5:15 PM 11788 SurveyUploader.log
-a--- 8/05/2013 5:15 PM 6078 SurveyUploader.ps1
----- 6/05/2013 10:43 AM 3473113 S_1813O.zip
しかし、スクリプトの変数にフィルターを渡す必要があります。
何か案が?