Pull to refresh

PowerShell: выстрелил и забыл

Reading time1 min
Views10K
Иногда мне хочется попросить PowerShell сделать что-нибудь длительное, а потом известить меня о том что работа готова. А я пока что-нибудь другое поделаю.

Например вот так
cp c:\windows\system32 -rec d:; done

(В качестве длительной операции «скопировать все из c:\windows\system32 на d:»)

Функция done выводит сообщение с надписью «done» причем его видно даже есои компьютер залочен.
Это достигается вот таким простеньким кусочком кода в профиле:

[System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
function msgBox($x){
    [System.Windows.Forms.MessageBox]::Show($x, 'Done!:PowerShell', 
	[Windows.Forms.MessageBoxButtons]::OK, 
	[Windows.Forms.MessageBoxIcon]::Information, [Windows.Forms.MessageBoxDefaultButton]::Button1,
	[Windows.Forms.MessageBoxOptions]::ServiceNotification
    )
}

function done(){ 
    msgBox("done")
}

Tags:
Hubs:
+16
Comments30

Articles

Change theme settings