Oto klasa rejestru, która usunie ssh: // i trailing (właściwie wszystko) / z identyfikatora URI przed przekazaniem go do PuTTY, aby PuTTY mógł je bezpośrednio otworzyć:
Na użytkownika:
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Classes\ssh]
@="URL:ssh Protocol"
"URL Protocol"="ssh://"
[HKEY_CURRENT_USER\Software\Classes\ssh\shell]
[HKEY_CURRENT_USER\Software\Classes\ssh\shell\open]
[HKEY_CURRENT_USER\Software\Classes\ssh\shell\open\command]
@="cmd /V:ON /c set params=%1 && set params=!params:ssh://=! && start \"PuTTY\" \"c:\\Program Files (x86)\\PuTTY\\putty.exe\" \"!params:/=!\""
I dla wszystkich w systemie:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\ssh]
@="URL:ssh Protocol"
"URL Protocol"="ssh://"
[HKEY_CLASSES_ROOT\ssh\shell]
[HKEY_CLASSES_ROOT\ssh\shell\open]
[HKEY_CLASSES_ROOT\ssh\shell\open\command]
@="cmd /V:ON /c set params=%1 && set params=!params:ssh://=! && start \"PuTTY\" \"c:\\Program Files (x86)\\PuTTY\\putty.exe\" \"!params:/=!\""
Zmień ścieżkę do pliku w zależności od potrzeb.
/ V: ON jest taki sam jak „SetLocal EnableDelayedExpansion”
/ c uruchamia polecenie
Ustawiam parametry na parametr, który jest „ssh: //domain.tld/”. Następnie usuwam z niego słowo „ssh: //” za pomocą parametru „! Params: ssh: // =!”, Który jest zamiennikiem funkcji „ssh: //” na „” na params zmiennych. Przydzielam to z powrotem params, teraz params = 'domain.tld /'. Następnie przekazuję go do putty i wykonuję kolejną operację find-replace, aby zamienić „/” na „”, aby usunąć końcowy ukośnik nakładany przez system Windows, pozostawiając „domain.tld”, którego może używać PuTTY.
To pozwala mi przetworzyć to wszystko w poleceniu wpisanym we wpisie rejestru. W ogóle nie powoduje dezynfekcji i jest łatwy do wykorzystania (np. Ssh: // && notepad otwiera notatnik), więc możesz chcieć zmienić URI na coś, co tylko ty znasz.
PowerShell
polecenia. Proszę bardzo.