Ini adalah prosedur umum yang dapat Anda gunakan untuk hampir semua shell. Dalam hal apa pun, Anda harus tahu shell mana yang biasanya akan digunakan pengguna untuk login:
path="$(grep $USER /etc/passwd | cut -d ':' -f 7)"
shell="$(basename -- "$path")"
Maka Anda harus mencari file dot mana yang biasanya dibaca oleh shell ini:
man $shell
Cara pintas yang mungkin berfungsi adalah mendaftar file-file dot yang berisi nama shell:
ls ~/.*${shell}*
Jika Anda ingin memeriksa apakah salah satu file benar-benar dibaca saat login, Anda cukup mencetak nama file di masing-masing, misalnya:
echo .bashrc
Saat masuk, Anda harus melihat file mana yang sedang dibaca, dan Anda dapat memutuskan mana yang akan dimodifikasi. Berhati-hatilah agar Anda tidak mencoba menggunakan echo "$0"
atau serupa, karena nilai $0
tergantung pada bagaimana shell memproses file-dot, dan bisa menyesatkan.
Ketika datang untuk mendeklarasikan variabel "secara permanen", perhatikan bahwa ini hanya meluas ke sesi. Tidak ada cara untuk mengakses nilai variabel tanpa sesi, jadi tidak ada artinya di luar satu. Jika Anda maksud "read-only", itu tergantung pada shell, dan di Bash Anda dapat menggunakan:
declare -r VAR
apakah sudah memiliki nilai, atau
declare -r VAR=value
untuk menetapkannya secara bersamaan. Tidak semua shell memiliki fitur ini.
Untuk mendeklarasikan variabel di sebagian besar shell, Anda harus menggunakan nama variabel ( [A-Za-z_][A-Za-z0-9_]*
), diikuti oleh tanda sama dengan (dan tidak ada spasi di sekitar tanda sama), lalu nilai (lebih disukai dikutip kecuali nilainya sederhana [A-Za-z0-9_]+
). Sebagai contoh:
name="John Doe"
ip=127.0.0.1
HORRIBLE=1