2016-10-13 8 views
0

私はいくつかのファイルを見つけてそれらをコピーしているスクリプトを持っています。これはpsakeビルドスクリプトの一部です。コピーアイテムが動作していません

コマンドは次のとおりです。

VERBOSE: Performing the operation "Copy File" on target 
"Item: C:\Source\TestSssisOne.ispac 
Destination: C:\Destination\TestSssisOne.ispac". 

必ずコピーしたファイルのようになります。私はこれを実行すると

Get-ChildItem -Path "$sourceFolder" -Include "*.ispac" -Recurse ` 
    | Select-Object -ExpandProperty FullName ` 
    | Copy-Item -Destination "$caseFolder\" -Force -Verbose 

、私はメッセージのためにこれを取得します。しかし、彼らはそうではありません。エラーはありません。このコマンドをISEにコピーして変数を設定すると、問題は何もコピーされません。私は、明示的なパスを持つ単一のファイルを手動でコピーしようとしました。繰り返しますが、スクリプトではコピーされませんが、PSコンソールやISEではコピーされます。

何が問題なのかわかりません。私はpsakeスクリプトでCopy-Itemを使用しました。実際には、私は後のタスクに上記のコードをコピーし、それは動作します!それが動作していないタスクでは、私はmsbuildにソリューションをビルドするよう呼びかけています。

洞察力がありがとう!権限:

+0

まず、物事のようにコードを変更します。エラーメッセージのマスクまたは破棄コピーした後でファイルを別の場所に削除する...あなたが投稿したものから、それは私が考えることができるすべてです。スクリプトを実行しているサーバーへのフルアクセス権がある場合、私の最初のアクションはprocmonトレースを取得し、エラーを探すことです。それで解決できない場合は、PSDebugをスクリプトで設定し、絞り込むようにしてください。 –

答えて

1

は気にしています。この

Get-ChildItem -Path "$sourceFolder" -Include "*.ispac" -Recurse -File | foreach{Copy-Item $_.FullName -Destination (("$caseFolder\") + $_.Name) -Force -Verbose } 
+0

これは機能します!通常のコピーアイテムが動作しない間、これがなぜ機能するのかについてのアイデアはありますか? –

関連する問題