puts "Why waste time say lot word when few word do trick?"

πŸ₯‘ Appetizer

Sebagai seorang software engineer yang baik, kita jangan sampai takut untuk “hidup” di terminal. Terlepas dari image “cool” yang akan kita dapatkan, dengan terbiasa hidup di terminal juga akan membuat pekerjaan kita jadi lebih cepat. Karena kita tidak bergantung lagi dengan aplikasi GUI yang resource heavy hanya untuk melakukan sesuatu yang simple. Namun, ada satu downside dari penggunaan terminal, yaitu saat menjalankan command dengan argumen yang panjang. Nah, command alias di sini bisa membantu problem kita tersebut.

πŸ₯© Main Course

A. Apa itu command alias?

Mungkin nama command ini sudah sangat self explanatory. alias adalah sebuah command standard yang disediakan oleh sistem operasi berbasis Unix. Fungsi utamanya adalah tidak lain dan tidak bukan untuk membuat “alias”, duh πŸ™„

Untuk lebih jelasnya, dengan command alias ini kita bisa mengubah cara menjalankan/pemanggilan sebuah command dengan cara yang kita mau. Masih bingung? Coba langsung kita praktekin aja di bawah!

B. Cara menggunakan command alias

Secara sederhana, begini cara menggunakan command alias:

alias nama-alias="command-yang-ingin-dijalankan"

NOTES: Untuk nama-alias yang akan kita buat harus digabung dan tidak boleh dipisah. Bisa digabung dengan underscore (_), hyphen (-), atau karakter-karakter lainnya. Untuk command-yang-ingin-dijalankan, jika command-nya hanya terdiri dari satu kata, maka tidak perlu kutip, selain itu perlu. Kutip yang digunakan bisa single maupun double quote(s).

Sebagai contoh, gua pingin membuat alias untuk salah satu command git yang lumayan sering gua pakai ini: git reset --soft HEAD~1. Bakal cape banget kan kalo kita harus tulis manual command tersebut terus-terusan? Nah, mari kita coba buatkan aliasnya dengan nama grsh1. Silahkan jalankan command di bawah ini dengan terminal favorit kalian.

alias grsh1="git reset --soft HEAD~1"

Setelah itu, untuk memanggil alias tersebut, kita hanya perlu menuliskan grsh1 kemudian tekan Enter.

grsh1

Alias tersebut saat dipanggil β€” under the hood β€” akan menjalankan command git reset --soft HEAD~1.

C. Membuat alias persisted

Perlu diingat, jika kita menggunakan cara di atas, alias tersebut hanya akan valid untuk sesi terminal di mana alias tersebut dibuat. Jika kita membuka sesi terminal baru, maka alias grsh1 tersebut akan hilang dan tidak bisa digunakan lagi.

Untuk membuatnya persisted di setiap sesi terminal yang kita punya, kita bisa mendefinisikan alias yang ingin kita buat di dalam config file-Shell yang kita gunakan.

  1. Mengetahui Shell yang kita gunakan

Cukup print value dari variable $SHELL yang kita punya dengan menggunakan command echo.

echo $SHELL
# /bin/zsh

Berdasarkan output dari command di atas, Shell yang gua pakai adalah zsh. Cukup tricky (baca: gua aja yang belum tau caranya πŸ˜…) untuk mengetahui di mana letak config file-nya. Untuk zsh sendiri biasanya ada di ~/.zshrc. Untuk bash, biasanya ada di ~/.bashrc.

  1. Membuat alias persisted dengan cara simple
echo "grsh1='git reset --soft HEAD~1'" >> ~/.zshrc
# NOTE: ganti `~/.zshrc` sesuai dengan config file-Shell yang kalian gunakan

Maksud dari command di atas adalah, kita akan meng-ouput teks grsh1='git reset --soft HEAD~1' dengan menggunakan command echo, kemudian menambahkan teks tersebut ke akhir file ~/.zshrc dengan menggunakan command >>.

  1. Membuat alias persisted dengan cara ribet

Seperti kata orang kebanyakan, ngapain pakai cara yang simple kalo ada cara yang ribet, kan?

Untuk cara “ribet” ini, caranya cukup buka config file-Shell yang kalian gunakan dengan teks editor favorit kalian. Kemudian tuliskan line ini di posisi paling bawah file tersebut (posisinya bebas sih sebenernya~).

# config file-Shell (contoh: ~/.zshrc)
alias grsh1="git reset --soft HEAD~1"

D. Trivia

Setiap kali kita merubah config file-Shell yang kita gunakan, kita bisa meload perubahan yang sudah kita buat tanpa harus menutup-membuka kembali terminal. Caranya adalah dengan menggunakan command source dengan cara seperti ini:

source /path/to/config-file
# contoh: source ~/.zshrc

🍰 Desert

Terus gimana kalo alias yang mau kita buat panjang, terdiri dari beberapa baris, dan mungkin harus ada conditional statement-nya? Cara di atas sebenernya masih valid untuk digunakan. Tapi, kalo gua sendiri sih lebih prefer untuk pakai cara yang kedua. Apa itu? Tunggu post selanjutnya, ya!