ダウンロードしたファイルのブロック解除

を、いちいち手動でやっていたら面倒くさいので、今までは、Sysinternals の Streams.exe を利用していました。

これの解除ね。

f:id:sutefu7:20190926233430p:plain

streams.exe をどこかに置いておいて、Downloads フォルダにバッチファイルを書いて使っていた

echo off
cd /d %~dp0

set exeFile="C:\~\Streams\streams.exe"
%exeFile% -s -d %~dp0

便利なんですが、パソコンを新調するたびにダウンロードしてきて呼び出し用バッチファイルを用意するのがアレでした。しかし!PowerShell でブロック解除できる命令があると知り、今後はこちらでまかなおうかなと思ったりしました。

バッチファイルと PowerShell ソースファイルをどこかに置いておいて実行

unblock.bat

@echo off
cd /d %~dp0

echo ブロック解除をしています…
powershell -NoProfile -ExecutionPolicy Unrestricted .\unblock.ps1
echo 完了しました!

unblock.ps1

# Downloads フォルダのフルパスを取得
$path = $env:HOMEDRIVE + $env:HOMEPATH + "\Downloads"

# フォルダ内の全てのファイルを対象にブロック解除
Get-ChildItem $path -Recurse | Unblock-File

結局、準備するのにたいして変わらない手間なので、従来通り使い続けてもいいのですが、世代交代的な時期が将来来るのかなと思いに老けたり。