これは一種の質問ですが、私が見つけた質問のどれも私が探していることは全く答えていません。私はPowerShell(まったく新しいもの)を使って、ディレクトリ内のサブディレクトリを検索し、指定されたディレクトリにそれらを移動するスクリプトを作成しています。PowerShell - 任意のサブディレクトリとすべてのサブディレクトリを検索して移動する
私の問題は、次のコード内にある:
$Folders = C:\Users\temp
$MoveFolders = Test-Path $Folders -PathType Container
Write-Host $MoveFolders
#I'm writing this with ISE, so I'm using write-host to view output for testing.
私はに実行している問題は、このコードが実行されるたびに、それはフォルダがtempディレクトリ内が存在しない場合でも、trueを返すということです。私は想像できるすべての考えられる方法で試してみました。get-childitemを使ってどこでオブジェクトをパイプしてテストしましたが、サブディレクトリが存在する場合にのみ移動を実行します。
ユーザーが何らかの形でファイルまたはフォルダをこの特定のフォルダに追加すると、タスクスケジューラがスクリプトを実行するときに移動されます。
EDIT 私の質問をリダイレクトします。それは常に真実を返します。私が書いたものが一時フォルダ自体をテストすると指摘している人もいます。どのようなサブフォルダをテストしてboolean値として格納する方法がありますか?次に、移動プロセスを終了するif文に渡します。
あなたは 'C:\ Users \ temp'ディレクトリの存在をテストしています。 'Get-ChildItem C:\ Users \ temp \ * |を試してみてください。 Where-Object {$ _。PsIsContainer} ' – beatcracker
私は自分の質問自体に徹底的ではなかったと思う。私が本当にやりたかったのは、boolean値が格納されていて、それを変更するifステートメントに渡すというものでした。それは可能ですか? – user6111573