2011-12-14 11 views
0

ローカル共有を作成して5分後に削除するには、powershellというコマンドにループしたいと思います。その後、1分待ってから再度共有を作成..そして、5分後にそれを削除するには、別の1分後に再びそれを作成することなどなど...Powershellループ

は、これら二つのガット:

$FolderPath = "D:\proxy" 
$ShareName = "proxy" 
$Type = 0 

$objWMI = [wmiClass] 'Win32_share' 
$objWMI.create($FolderPath, $ShareName, $Type) 

Start-Sleep -s 60 
Get-WmiObject -Class Win32_Share -Filter "Name='proxy'" | Remove-WmiObject 

Start-Sleep -s 60 
$objWMI = [wmiClass] 'Win32_share' 
$objWMI.create($FolderPath, $ShareName, $Type) 

しかし、それはループしていません。ファイルの終了後に停止します。

答えて

0

だけdo {} while(true)ブロックにコードを挿入(または何が必要に条件を変更する)などの

+0

ご協力いただきありがとうございます。 – user1097593

0

何か:あなたはそれがするループの最後の作成ステップを必要としない

$done = $false 
while(!$done) 
{ 
    $FolderPath = "D:\proxy" 
$ShareName = "proxy" 
$Type = 0 

$objWMI = [wmiClass] 'Win32_share' 
$objWMI.create($FolderPath, $ShareName, $Type) 

Start-Sleep -s 60 
Get-WmiObject -Class Win32_Share -Filter "Name='proxy'" | Remove-WmiObject 

Start-Sleep -s 60 
$objWMI = [wmiClass] 'Win32_share' 
$objWMI.create($FolderPath, $ShareName, $Type) 
} 
1

最初のループステップで作成されます。操作をキャンセルするには、Ctrl + Cを押します。

$FolderPath = "D:\proxy" 
$ShareName = "proxy" 
$Type = 0 

while($true){ 
    #create the share 
    $objWMI = [wmiClass] 'Win32_share' 
    $objWMI.create($FolderPath, $ShareName, $Type) 

    # remove it after 5 minutes 
    Start-Sleep -s 300 
    Get-WmiObject -Class Win32_Share -Filter "Name='proxy'" | Remove-WmiObject 

    # wait one minute, share will be created in next loop iteration 
    Start-Sleep -s 60 
} 
+0

完全に私のために働いています。 –

関連する問題