20 One-Liner Command Linux yang Akan Menghemat Waktu Anda Sehari-hari
20 One-Liner Command Linux yang Akan Menghemat Waktu Anda Sehari-hari
One-liner command adalah kombinasi command Linux yang powerful dan dapat dieksekusi dalam satu baris. Artikel ini mengumpulkan 20 one-liner paling berguna untuk task sehari-hari seperti file processing, system monitoring, network debugging, dan text manipulation.
1. File dan Direktori Management
Cek 10 Direktori Terbesar
du -sh /* 2>/dev/null | sort -rh | head -10
Command ini menampilkan 10 direktori terbesar di sistem. Berguna untuk menemukan penyebab disk space habis dengan cepat.
Breakdown:
du -sh /*: Hitung ukuran semua direktori di root2>/dev/null: Hilangkan error permission deniedsort -rh: Sort secara reverse dan human-readablehead -10: Ambil 10 baris pertama
Find dan Delete File Berdasarkan Ekstensi
find /var/log -name "*.log" -mtime +30 -delete
Menghapus file log yang lebih dari 30 hari.
Rename Semua File dalam Direktori
for f in *.txt; do mv "$f" "${f%.txt}.bak"; done
Rename semua file .txt menjadi .bak.
Copy Struktur Direktori Tanpa File
find /source -type d -exec mkdir -p /dest/{} \;
Membuat struktur direktori yang sama tanpa meng-copy file.
Create Nested Directory Structure
mkdir -p project/{src,test,docs}/{2024,2025}/{q1,q2,q3,q4}
Membuat struktur direktori kompleks dalam satu command.
2. Text Processing dan Manipulasi
Count Word Frequency
cat file.txt | tr '[:upper:]' '[:lower:]' | tr -s '[:space:]' '\n' | sort | uniq -c | sort -rn | head -20
Menampilkan 20 kata yang paling sering muncul dalam file.
Extract Email Addresses dari File
grep -oE '[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}' file.txt
Mengekstrak semua email address menggunakan regex.
Remove Duplicate Lines (Keep Order)
awk '!seen[$0]++' file.txt
Menghapus baris duplikat sambil mempertahankan urutan asli.
Replace Text di Multiple Files
find . -type f -name "*.js" -exec sed -i 's/oldFunction/newFunction/g' {} +
Replace text di semua file JavaScript dalam direktori.
Generate Random Password
cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 16 | head -n 5
Membuat 5 password random 16 karakter.
3. System Monitoring dan Informasi
Monitor Memory Usage Tiap 5 Detik
while true; do clear; free -h; sleep 5; done
Monitoring real-time penggunaan memory.
Cek Proses Paling Banyak Menggunakan CPU
ps aux --sort=-%cpu | head -n 11
Menampilkan 10 proses dengan CPU usage tertinggi.
Monitor Network Connections Real-time
watch -n 1 "netstat -tuln | grep LISTEN"
Monitoring port yang sedang listening.
Cek Disk Usage Semua Filesystem
df -h | grep -E '^/dev/' | awk '{print $5, $1}' | sort -rn
Menampilkan penggunaan disk terurut dari yang terbesar.
Find Files yang Diakses dalam 24 Jam Terakhir
find /var/www -type f -atime -1 -ls
Mencari file yang baru diakses (berguna untuk troubleshooting).
4. Network dan Debugging
Test Website Response Time
for i in {1..5}; do curl -o /dev/null -s -w "%{time_total}\n" https://example.com; done
Mengukur response time website 5 kali.
Scan Port dengan Netcat
for port in {1..65535}; do (echo "" > /dev/tcp/localhost/$port) 2>/dev/null && echo "$port open"; done
Port scanning lokal dengan bash built-in (tanpa nmap).
Download File dengan Resume Support
curl -C - -O https://example.com/large-file.zip
Resume download yang terputus.
Cek IP Public Anda
curl -s ifconfig.me
Mendapatkan IP public dengan cepat.
Monitor HTTP Headers
curl -I -s https://example.com | grep -E "HTTP|Server|Content-Type"
Cek header response dari website.
5. Advanced One-Liners
Kill Semua Proses dengan Nama Tertentu
ps aux | grep "process_name" | grep -v grep | awk '{print $2}' | xargs kill -9
Kill semua proses yang mengandung nama tertentu.
Backup Database dan Compress
mysqldump -u root -p database_name | gzip > backup_$(date +%Y%m%d_%H%M%S).sql.gz
Backup database MySQL dengan compression.
Generate Report File Sizes
find /var/log -type f -size +100M -exec ls -lh {} \; | awk '{print $5, $9}' | sort -rh
Mencari file log yang lebih dari 100MB.
Screenshot Terminal ke Text
script -q -c "your-command" /dev/null | aha > output.html
Mengkonversi output terminal ke HTML.
Create Self-Extracting Archive
tar czf - directory/ | base64 | xargs -I {} echo "echo '{}' | base64 -d | tar xzf -" > extract.sh
Membuat self-extracting script dari direktori.
6. One-Liners untuk Developer
Count Lines of Code
find . -type f \( -name "*.js" -o -name "*.py" -o -name "*.java" \) -exec wc -l {} + | tail -1
Menghitung total baris kode project.
Git Stats (Commit per Author)
git log --format='%aN' | sort | uniq -c | sort -rn
Menampilkan jumlah commit per author.
Find TODO Comments dalam Codebase
grep -r "TODO\|FIXME\|XXX" --include="*.js" --include="*.py" .
Mencari comment TODO dalam project.
Convert File Encoding
iconv -f ISO-8859-1 -t UTF-8 input.txt > output.txt
Mengkonversi encoding file.
Create SHA256 Checksum untuk Semua File
find . -type f -exec sha256sum {} \; > checksums.sha256
Membuat checksum untuk integrity verification.
Kesimpulan
One-liner command Linux sangat powerful untuk meningkatkan produktivitas. Dengan memahami pipe (|), redirection (>, <), dan command chaining (;, &&, ||), Anda dapat membuat kombinasi command yang kompleks untuk task apapun.
Tips Menggunakan One-Liners:
- Test di environment staging terlebih dahulu
- Gunakan
-natau--dry-rununtuk preview - Tambahkan
echosebelum command destructive untuk test - Simpan one-liners berguna dalam file untuk reuse
- Gunakan
history | grepuntuk menemukan command yang pernah digunakan
Alias Berguna untuk .bashrc:
alias bigdir='du -sh /* 2>/dev/null | sort -rh | head -10'
alias meminfo='free -h && ps aux --sort=-%mem | head -11'
alias myip='curl -s ifconfig.me'
alias ports='netstat -tulanp'
Pelajari one-liner ini dan sesuaikan dengan kebutuhan Anda. Kombinasi command yang tepat dapat menghemat jam kerja menjadi hitungan detik.
Artikel Terkait
Link Postingan: https://www.tirinfo.com/20-one-liner-command-linux-menghemat-waktu/