นี่คือคลาสรีจิสตรีที่จะลบ ssh: // และ trailing (อันที่จริง, ทั้งหมด) / จาก URI ก่อนส่งต่อไปยัง PuTTY เพื่อ PuTTY โดยตรงสามารถเปิดได้:
ต่อผู้ใช้:
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:/=!\""
และสำหรับทุกคนในระบบ:
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:/=!\""
เปลี่ยนเส้นทางของไฟล์ตามความต้องการของคุณ
/ V: ON เหมือนกับ 'SetLocal EnableDelayedExpansion'
/ c รันคำสั่ง
ฉันตั้งค่าพารามิเตอร์เป็นพารามิเตอร์ซึ่งเป็น 'ssh: //domain.tld/' จากนั้นฉันตัด 'ssh: //' ออกจากมันด้วย '! params: ssh: // =!' ซึ่งเป็นการค้นหาแทนที่สำหรับ 'ssh: //' เป็น '' บนตัวแปรพารามิเตอร์ ฉันกำหนดให้กลับไปที่ params ตอนนี้ params = 'domain.tld /' จากนั้นฉันจะส่งต่อไปยัง putty และหา find-replace เพื่อแทนที่ '/' ด้วย '' เพื่อลบเครื่องหมายสแลชต่อท้ายที่ Windows วางไว้โดยปล่อย 'domain.tld' ซึ่ง PuTTY สามารถใช้ได้
นี่ทำให้ฉันสามารถประมวลผลทั้งหมดในคำสั่งที่ป้อนในรายการรีจิสทรี มันไม่ได้ทำการฆ่าเชื้อใด ๆ เลยและใช้ประโยชน์ได้ง่าย (เช่น ssh: // && notepad จะเปิด notepad) ดังนั้นคุณอาจต้องการเปลี่ยน URI เป็นสิ่งที่คุณเท่านั้นที่รู้
PowerShell
คำสั่ง ไปเลย