01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
2007-08-31 Fri
■ ssh-agent 用の関数
function PS-ssh-agent { param([switch]$k) if($k) { $con = ssh-agent -k; $reg = new-object System.Text.RegularExpressions.Regex("echo (.*)"); echo $reg.Match($con).Groups[1].value; Remove-Item env:SSH_AUTH_SOCK Remove-Item env:SSH_AGENT_PID return; }else{ $con = ssh-agent -c; $reg = new-object System.Text.RegularExpressions.Regex("SSH_AGENT_PID (\d+)"); New-Item env:SSH_AGENT_PID -value $reg.Match($con).Groups[1].value | Out-Null; $reg = new-object System.Text.RegularExpressions.Regex("SSH_AUTH_SOCK (/tmp/ssh-\w+/agent\.\d+)") New-Item env:SSH_AUTH_SOCK -value $reg.Match($con).Groups[1].value | Out-Null; $reg = new-object System.Text.RegularExpressions.Regex("echo (.*)"); echo $reg.Match($con).Groups[1].value; return; } }
eval したときと同じように環境変数を設定する。
-k でプロセスの削除