SiRapi adalah alat bantu pintar berbasis PowerShell untuk merapikan file-file yang berantakan di komputer Anda secara otomatis ke dalam subfolder berdasarkan jenis ekstensinya.
SiRapi dirancang agar cepat, aman, dan tidak akan menimpa file Anda yang sudah ada. Mendukung undo, deteksi duplikat berbasis konten, dan konfigurasi fleksibel.
+==================================================+
| |
| SiRapi - Asisten Perapih Folder |
| Aman * Cepat * Tidak Menimpa File |
| |
+==================================================+
--------------------------------------------------
Skip (lewati), Rename (otomatis file (2).ext), dan Hash (bandingkan SHA256; konten identik dilewati, beda diganti nama).-Preview) atau gunakan -WhatIf/-Confirm native PowerShell.%LOCALAPPDATA%\SiRapi\manifests\. Kembalikan dengan -Undo (rekursif, bersihkan folder kosong).-ByDate Year atau -ByDate Month mengelompokkan lagi per tahun/bulan berdasarkan LastWriteTime (mis. Images\Photos\2024 atau Images\Photos\2024-08).-Config file.json untuk kategori buatan sendiri.-Force ikut merapikan file tersembunyi/system.%TEMP% untuk pengujian.Write-Progress untuk ribuan file.+====+ dengan warna Cyan/White/DarkCyan dan header -- PILIH FOLDER -- yang lebih rapi.Pilih salah satu dari 2 metode praktis berikut:
Tanpa download. Buka PowerShell (Start â ketik PowerShell â Enter), lalu:
irm "https://sirapi.itsumam.my.id/SiRapi.ps1" | iex
Ikuti menu interaktif:
[1] Downloads, [2] Folder saat ini, [3] Lokasi lain)[1] Pintar, [2] Standar, [3] Preview, [4] Undo jika ada manifest)SiRapi.ps1 ke mis. D:\SiRapid:
cd "D:\SiRapi"
Unblock-File .\SiRapi.ps1
.\SiRapi.ps1
Lewati menu interaktif:
# Rapikan folder tertentu
& "D:\SiRapi\SiRapi.ps1" -Path "D:\Folder Berantakan" -Yes
# Preview (Standar)
& "D:\SiRapi\SiRapi.ps1" -Path "D:\Folder" -Preview
# Mode Pintar + rename duplikat
& "D:\SiRapi\SiRapi.ps1" -Path "D:\Folder" -Advanced -DuplicateAction Rename -Yes
# Deteksi duplikat via hash konten
& "D:\SiRapi\SiRapi.ps1" -Path "D:\Folder" -DuplicateAction Hash -Yes
# Group per bulan
& "D:\SiRapi\SiRapi.ps1" -Path "D:\Folder" -ByDate Month -Yes
# Ikutkan file hidden/system
& "D:\SiRapi\SiRapi.ps1" -Path "D:\Folder" -Force -Yes
# Kategori custom dari JSON
& "D:\SiRapi\SiRapi.ps1" -Path "D:\Folder" -Config "D:\kategori.json" -Yes
# WhatIf / Confirm native
& "D:\SiRapi\SiRapi.ps1" -Path "D:\Folder" -WhatIf
& "D:\SiRapi\SiRapi.ps1" -Path "D:\Folder" -Confirm
# Undo perapihan terakhir
& "D:\SiRapi\SiRapi.ps1" -Path "D:\Folder" -Undo
# Kombinasi
& "D:\SiRapi\SiRapi.ps1" -Path "D:\Folder" -Advanced -ByDate Year -DuplicateAction Hash -Force -Yes
| Parameter | Tipe | Default | Deskripsi |
|---|---|---|---|
-Path / -Folder |
string |
(interaktif) | Folder target. Alias Folder. |
-Advanced |
switch |
false |
Kategori detail (Pintar). Tanpa ini = Standar. |
-Preview |
switch |
false |
Simulasi, tidak memindahkan. |
-DuplicateAction |
Skip/Rename/Hash |
Skip |
Strategi jika nama sama di tujuan. |
-Yes |
switch |
false |
Lewati konfirmasi Ketik Y. |
-Undo |
switch |
false |
Kembalikan perapihan terakhir (baca manifest terbaru). |
-Force |
switch |
false |
Sertakan file hidden/system (Get-ChildItem -Force). |
-Config |
string |
"" |
Path JSON kategori kustom. |
-ByDate |
None/Year/Month |
None |
Subfolder tanggal dari LastWriteTime. |
-WhatIf/-Confirm |
native | - | Dukungan SupportsShouldProcess. |
Exit Code: 0 sukses/preview/dibatalkan, 1 sebagian gagal, 2 input tidak valid / folder dilindungi.
Buat file mis. kategori.json:
{
"FotoSaya": [".jpg", ".jpeg", ".heic"],
"Kerjaan": [".pdf", ".docx", ".xlsx"],
"Musik": [".mp3", ".flac"],
"Lainnya": []
}
\ untuk subfolder, mis. "Images\\Photos").%LOCALAPPDATA%\SiRapi\manifests\<hash-folder>\<timestamp>-<pid>.json (fallback ~\.SiRapi\manifests\ jika LOCALAPPDATA tidak ada).RunTime, Folder, Mode, DuplicateAction, ByDate, Entries[] (SourcePath, DestinationPath, SizeBytes, Category, Timestamp).Undo membalik urutan, membuat folder asal bila perlu, ShouldProcess aware, dan menghapus folder kategori yang kosong secara rekursif (terdalam dulu). Manifest diarsipkan jadi *.undone.json agar tidak ter-undo ganda.C:\Windows, System, Program Files/(x86), ProgramData, AppData (Local/Roaming), root drive (C:\).%TEMP% / %TMP% walau di dalam AppData\Local (untuk pengujian).SiRapi.ps1 sendiri tidak pernah dipindahkan.| Status | Warna | Penjelasan |
|---|---|---|
[RAPI!] |
Hijau/Abu | Berhasil dipindahkan. |
[RENCANA] |
DarkCyan | Preview / rencana (tidak memindahkan). |
[GANTI NAMA] |
Magenta | Diganti nama karena duplikat (file (2).ext). |
[DILEWATI] |
Kuning | Dilewati karena nama sudah ada (Skip). |
[DUPLIKAT] |
Kuning | Hash: konten identik, dilewati. |
[PULIH] |
Hijau | Undo berhasil kembalikan file. |
[GAGAL] |
Merah | Gagal pindah/kembalikan (terkunci, akses ditolak). |
[DIBATALKAN] |
Merah/Kuning | Dibatalkan user atau folder dilindungi. |
[BERSIH] |
Hijau | Tidak ada file yang perlu dirapikan. |
[SELESAI] |
Cyan | Ringkasan akhir + path manifest. |
[PREVIEW]/[WHATIF] |
Cyan | Mode simulasi selesai. |
[INFO] |
DarkYellow | Hash: konten beda, akan diganti nama. |
Silakan gunakan, pelajari, modifikasi, dan bagikan SiRapi secara bebas sesuai kebutuhan Anda!