Powershell Alternative
This commit is contained in:
42
clip2snips.ps1
Normal file
42
clip2snips.ps1
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
# clip2snips.ps1
|
||||||
|
|
||||||
|
# Setze Output-Encoding auf UTF-8
|
||||||
|
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
|
||||||
|
$OutputEncoding = [System.Text.Encoding]::UTF8
|
||||||
|
|
||||||
|
# Hole Text aus der Zwischenablage
|
||||||
|
$clipText = Get-Clipboard
|
||||||
|
if ([string]::IsNullOrWhiteSpace($clipText)) {
|
||||||
|
Write-Host "die zwischenablage ist leer"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
# Entferne Zeilenumbrüche am Ende
|
||||||
|
$clipText = $clipText.TrimEnd()
|
||||||
|
|
||||||
|
# Sende Text an snips.sh und hole die Antwort
|
||||||
|
try {
|
||||||
|
# Verwende -rawOutput um Encoding-Probleme zu vermeiden
|
||||||
|
$output = $clipText | ssh -T snips.sh 2>&1 | Out-String
|
||||||
|
# Write-Host "Debug - SSH Antwort:"
|
||||||
|
#Write-Host $output
|
||||||
|
} catch {
|
||||||
|
Write-Host "fehler beim senden an snips.sh: $_"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
# Extrahiere die URL mit verbessertem Regex
|
||||||
|
if ($output -match 'f:([_a-zA-Z0-9]+)@snips\.sh') {
|
||||||
|
$id = $matches[1]
|
||||||
|
$url = "https://snips.sh/f/$id"
|
||||||
|
|
||||||
|
# Kopiere URL in die Zwischenablage
|
||||||
|
$url | Set-Clipboard
|
||||||
|
|
||||||
|
# Gib URL aus
|
||||||
|
Write-Host $url
|
||||||
|
} else {
|
||||||
|
Write-Host "keine url in der antwort gefunden"
|
||||||
|
Write-Host "Debug - Antwort enthält keine URL im Format: ssh f:ID@snips.sh"
|
||||||
|
exit 1
|
||||||
|
}
|
Reference in New Issue
Block a user