Vezměte si, že má někdo narozeniny a vy jako kolegové se chcete tajně
domluvit co mu koupíte. Při pár lidech to jde udělat osobně, ale když
vás je o hodně více, tak nejjednodušší cesta je email.
Jak ale napsat email všem, kromě toho kdo má narozeniny? Vypisovat všechny osoby bylo příliš zdlouhavé a hlavně zbytečné.
Vytvořte si Nový email a najděte si skupinu se všemi lidmi. Poté klikněte na ikonku plus vedle ní.
Nyní se vám zobrazí všichni adresáti a vy z nich můžete odmazat toho, kterému nechcete email poslat.
28. 5. 2016
Powershell - povolení Remote Desktop
Bohužel na povolení zatím neexistuje jednoduchý cmdlet a proto je nutné to udělat více kroků.
1) Povolte Remote Desktop
2) Povolte příchozí komunikaci RDP na firewallu
3) Povolte zabezpečenou RDP autentizaci
Že je povoleno, se můžete ujistit zde
1) Povolte Remote Desktop
set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server'-name "fDenyTSConnections" -Value 0
2) Povolte příchozí komunikaci RDP na firewallu
Enable-NetFirewallRule -DisplayGroup "Remote Desktop"
3) Povolte zabezpečenou RDP autentizaci
set-ItemProperty -Path
'HKLM:\System\CurrentControlSet\Control\Terminal
Server\WinStations\RDP-Tcp' -name "UserAuthentication" -Value 1
Že je povoleno, se můžete ujistit zde
8. 5. 2016
Databázové transakce
Pokud potřebujete provést v MS SQL příkaz, který nebude proveden dokud ho nepotvrdíte, použijte databázovou transakci.
Ta zajistí, že se příkaz provede, ale "nezapíše", dokud vy to neřeknete anebo než se odpojíte od databáze.
Jestliže se rozhodnete transakce využívat, vždy před script zapište Begin transaction. To zajistí, že příkaz nebude zapsán, dokud jej nepotvrdíte nebo neodmítnete.
Pozor ale na jednu věc, dokud neuděláte commit nebo rollback, tak nikdo jiný nemůže provádět další příkazy! Tzn. že si databázi uzamknete pro sebe. Jakmile provedete commit či rollback, ostatní již mohou začít zase využívat tyto prostředky.
Pokud příkaz, chcete prvést, bude vypadat následovně
Pokud se ale rozhodnete příkaz nakonec neprovést a změny chcete vrátit, bude vypadat takto
Více se můžete dozvědět i zde v angličtině: https://www.youtube.com/watch?v=shkt9Z5Gz-U
Ta zajistí, že se příkaz provede, ale "nezapíše", dokud vy to neřeknete anebo než se odpojíte od databáze.
Jestliže se rozhodnete transakce využívat, vždy před script zapište Begin transaction. To zajistí, že příkaz nebude zapsán, dokud jej nepotvrdíte nebo neodmítnete.
Pozor ale na jednu věc, dokud neuděláte commit nebo rollback, tak nikdo jiný nemůže provádět další příkazy! Tzn. že si databázi uzamknete pro sebe. Jakmile provedete commit či rollback, ostatní již mohou začít zase využívat tyto prostředky.
Pokud příkaz, chcete prvést, bude vypadat následovně
Begin transaction
- - - váš SQL script - - -
Commit transaction
- - - váš SQL script - - -
Commit transaction
Pokud se ale rozhodnete příkaz nakonec neprovést a změny chcete vrátit, bude vypadat takto
Begin transaction
- - - váš SQL script - - -
Rollback transaction
- - - váš SQL script - - -
Rollback transaction
Více se můžete dozvědět i zde v angličtině: https://www.youtube.com/watch?v=shkt9Z5Gz-U
Powershell - proč nelze spouštět scripty?
Pokud chcete na svém počítači spouštět Poweshell scripty, je potřeba ještě předtím spustit jeden, kterým toto povolíte.
Celá syntaxe pak vypadá takto
A více informací o tomto scriptu lze najít přímo na webu Microsoftu.
Powershell scripty jsou standardně ve Windows prostředí zakázané. Proč? Protože s nimi lze hodně uškodit, pokud nevíte co děláte, anebo si stáhnete nějaký z internetu.
set-executionpolicy remotesigned
Celá syntaxe pak vypadá takto
Set-ExecutionPolicy [-ExecutionPolicy]
<ExecutionPolicy> [[-Scope] <ExecutionPolicyScope> ]
[-Force] [-Confirm] [-WhatIf] [ <CommonParameters>]
A více informací o tomto scriptu lze najít přímo na webu Microsoftu.
Powershell scripty jsou standardně ve Windows prostředí zakázané. Proč? Protože s nimi lze hodně uškodit, pokud nevíte co děláte, anebo si stáhnete nějaký z internetu.
Powershell - zabalení nebo rozbalení archivu
Powershell standardně archivuje vše do ZIP souboru.
To samé platí i pro rozbalení. Pokud byste chtěli využít jiný
archivátor, určitě to možné je, nicméně v tomto článku se budu zabívat
pouze tím, co je v Powershellu nativní.
Archivace složky c:\Temp\Test archivace
Přidání souborů do již existujícího archivu
Pozor, soubory se stejným názvem budou v archivu přepsány!
Rozbalení archivu
Popis od MS najdete zde.
Nejprve je potřeba přidat potřebný objekt. Stačí jej přidat pouze jednou před prvním spuštěním scriptů.
Rozbalení archivu
Následně vytvořit proměnné s cestami
A jako poslední zavolat třídu pro rozbalení
Zabalení složky
Znovu si vytvoříme proměnné s cestami
A zavoláme znovu třídu
Popis třídy ZipFile je zde.
Powershell verze 5
Ve verzi 5 je to jednodušší, protože je zde implementován CMDlet, který toto provádí napřímo a nemusíte tedy volat žádné další pomocníky.Archivace složky c:\Temp\Test archivace
Compress-Archive -Path 'C:\Temp\Test archivace' -DestinationPath C:\Temp\archiv.zip
Přidání souborů do již existujícího archivu
Pozor, soubory se stejným názvem budou v archivu přepsány!
Compress-Archive -Path C:\Soubry\*.txt -Update -DestinationPath C:\Temp\archiv.zip
Rozbalení archivu
Expand-Archive -Path C:\Temp\archiv.zip -DestinationPath C:\Temp
Popis od MS najdete zde.
Powershell verze 4
V této verzi je to o něco složitější, ale nicméně také funkční.Nejprve je potřeba přidat potřebný objekt. Stačí jej přidat pouze jednou před prvním spuštěním scriptů.
Add-Type -assembly "system.io.compression.filesystem"
Rozbalení archivu
Následně vytvořit proměnné s cestami
$Zip = 'C:\Temp\archiv.zip'
$Destination = 'C:\Temp\Test archivace'
$Destination = 'C:\Temp\Test archivace'
[io.compression.zipfile]::ExtractToDirectory($Zip, $Destination)
Zabalení složky
Znovu si vytvoříme proměnné s cestami
$Slozka = 'C:\Temp\Test archivace'
$Zip = 'C:\Temp\archiv.zip'
$Zip = 'C:\Temp\archiv.zip'
[io.compression.zipfile]::CreateFromDirectory($Slozka, $Zip)
Popis třídy ZipFile je zde.