# === INPUT ===
$link = Read-Host "Masukkan LINK Google Sheet (copy dari dosen)"
$saveDir = Read-Host "Masukkan folder tempat save (contoh: C:\Users\Public\Documents)"
$fileName = Read-Host "Masukkan nama file (contoh: LinkSheet.url, tekan Enter untuk auto)"
# === GENERATE AUTO FILE NAME jika kosong ===
if ([string]::IsNullOrWhiteSpace($fileName)) {
# Hapus prefix 'https://' atau 'http://'
$cleanLink = $link -replace '^https?://', ''
# Ambil first 30 karakter yang HANYA huruf/angka
$cleanName = ($cleanLink -replace '[^a-zA-Z0-9]', '') # remove simbol
$cleanName = $cleanName.Substring(0, [Math]::Min(30, $cleanName.Length))
# Set fileName otomatis + .url
$fileName = "$cleanName.url"
Write-Host "🔄 Auto-generated file name: $fileName"
}
else {
# Force tambahkan .url kalau belum ada
if (-not $fileName.ToLower().EndsWith(".url")) {
$fileName = "$fileName.url"
Write-Host "ℹ️ Ditambahkan extension .url → $fileName"
}
}
# === BUILD CONTENT ===
$urlContent = @"
[InternetShortcut]
URL=$link
"@
# === SAVE FILE ===
$outputPath = Join-Path -Path $saveDir -ChildPath $fileName
$urlContent | Out-File -FilePath $outputPath -Encoding ASCII
# === DONE ===
Write-Host "✅ Berhasil buat file: $outputPath" -ForegroundColor Green