/var/log/jsoizo

メモ帳 技術とか趣味とか

WindowsのUeli(AlfredのWin版)でpwgenしたい

モチベ

業務用PCがMacなのでAlfredを使っており、 ワークフローとしてパスワードジェネレータのプラグインを入れている。

github.com

私用PCがWindowsになって、そのへんの似たような環境を作りたかったので、 それを記録しておく。

内容

Ueliの設定画面をタスクバーから開き、workflowの設定項目を選択。

f:id:jsoizo:20201019140509p:plain

Ueliのworkflowは

  • 任意のファイル実行
  • URLを開く
  • コマンドの直接実行

とあるが、コマンドでいい感じにできなかったのでおなじみbatファイルを作って、 そこからパスワードを生成している。

f:id:jsoizo:20201019141045p:plain

記号あり/なし版を用意しており、それぞれ実装方法が異なっている。

記号ありの場合

PowerShellでパスワードを生成するコマンドを叩いてクリップボードにコピーするだけ。 GeneratePasswordの引数で長さを指定する。 以下は32文字の場合。

PowerShell -command "Add-Type -AssemblyName System.Web;[System.Web.Security.Membership]::GeneratePassword(32,0)" | clip

参考 docs.microsoft.com

記号なしの場合

同様にPowerShellでパスワードを生成することを考えたが、 記号なしでやるいい感じのワンライナーが見つからなかった(かんがえるのがめんどくさかった)ので、 WSLからUbuntu上のpwgenコマンド(aptによりインストール済み)を叩くことにした。

wsl pwgen -n -s 32 1 | clip

参考 linux.die.net

記号ありの方もWSL使えばいいじゃないかと思ったが、 WSL起動ぶんのオーバーヘッドがいやなのでそうはしない。 実際は気にしなくても良いレベルかもしれない。