Jika pekerjaan Anda melibatkan melakukan hal-hal melalui baris perintah di Linux, kemungkinan besar, Anda akan menggunakan shell Bash. Tahukah Anda ada lingkungan yang terkait dengan proses yang dijalankan melalui shell? Dan, jika Anda mau, Anda dapat mengubah lingkungan ini khusus untuk tugas yang Anda lakukan? Nah, dalam artikel ini kita akan membahas alat baris perintah - env - yang tidak hanya memungkinkan Anda mengakses lingkungan shell, tetapi juga memungkinkan Anda membuat perubahan saat diperlukan.
Namun sebelum kita melakukannya, perlu disebutkan bahwa semua perintah dan instruksi yang disebutkan dalam tutorial ini telah diuji pada shell Bash yang berjalan di Ubuntu 16.04LTS.
Perintah env Linux
Menurut definisi, perintah env memungkinkan Anda menjalankan program di lingkungan yang dimodifikasi. Berikut adalah sintaks dari perintah tersebut, seperti yang disebutkan di halaman manualnya:
env [OPTION]... [-] [NAME=VALUE]... [COMMAND [ARG]...]
Dan inilah yang dikatakan halaman manual tentang env:
Tetapkan setiap NAME ke VALUE di lingkungan dan jalankan COMMAND.
Mengikuti contoh gaya Tanya Jawab akan memberi Anda ide yang lebih baik tentang cara kerja perintah ini:
Q1. Bagaimana cara mengakses semua variabel lingkungan menggunakan perintah env?
Lingkungan bash, seperti yang mungkin sudah Anda ketahui, terdiri dari entri VARNAME=VALUE. Untuk mengakses semua variabel lingkungan serta nilai yang terkait dengannya, jalankan perintah env tanpa opsi apa pun.
env
Berikut adalah output dari perintah di atas dalam kasus kami:
Q2. Bagaimana cara mengubah lingkungan sementara menggunakan env?
Fitur utama yang ditawarkan env adalah kemampuan untuk mengubah lingkungan secara sementara untuk suatu proses. Misalnya, kami membuat executable kecil - dijuluki env - yang menampilkan nilai variabel lingkungan USER saat dieksekusi.
Berikut output dalam skenario normal:
Sekarang, yang kami lakukan adalah, kami menggunakan perintah env untuk sementara mengubah nilai variabel lingkungan USER dari 'himanshu' menjadi 'HTF' untuk executable/proses. Berikut adalah perintah yang kami gunakan dalam kasus ini:
env USER=HTF ./env
Dan inilah output yang dihasilkan dalam hal ini:
Jadi Anda dapat melihat bahwa executable mengembalikan nilai baru.
Catatan:Seperti yang disarankan oleh sintaks generik alat, Anda dapat mengubah nilai beberapa variabel lingkungan dan membuat proses menggunakan nilai baru ini.
Q3. Bagaimana cara membuat proses mengabaikan lingkungan yang ada menggunakan env?
Jika mau, Anda juga dapat membuat proses mengabaikan lingkungan yang ada/diwariskan, dan memulai dengan yang kosong. Ini dapat dilakukan dengan menggunakan -i atau --ignore-environment pilihan.
Misalnya:
Q4. Bagaimana membuat env menggunakan NUL alih-alih karakter baris baru dalam output?
Pada contoh pertama yang kita bahas di atas, jalur keluaran yang dihasilkan oleh env dipisahkan oleh baris baru. Namun, jika mau, Anda dapat membuat env menggunakan karakter NUL sebagai pemisah. Fitur ini dapat diakses menggunakan --null opsi baris perintah.
env --null
Berikut ini adalah contoh tangkapan layar;
Q5. Bagaimana cara mengetahui kesalahan berdasarkan status keluar perintah env?
Perintah env menghasilkan kode keluar berikut:0, 125, 126, dan 127. Berikut ini adalah deskripsi kesalahan terkait:
0 jika tidak ada COMMAND yang ditentukan dan lingkungan dikeluarkan
125 jika 'env' itu sendiri gagal
126 jika COMMAND ditemukan tetapi tidak dapat dipanggil
127 jika COMMAND tidak dapat ditemukanJika Anda mendapatkan kode kesalahan selain yang disebutkan di atas, maka itu adalah status keluar yang dikembalikan oleh proses/perintah yang dijalankan dengan lingkungan yang dimodifikasi.
Kesimpulan
Jika Anda seorang pemula baris perintah yang lengkap, kemungkinan besar Anda tidak akan memerlukan alat ini setiap hari. Namun, itu tidak berarti bahwa itu tidak layak untuk diketahui - pada kenyataannya, env sangat berguna dalam banyak situasi. Contoh yang kami bagikan dalam tutorial ini seharusnya cukup untuk memberi Anda permulaan. Untuk informasi lebih lanjut, buka halaman manual perintah, atau lebih baik, jalankan perintah berikut:
info coreutils env doa
Perintah dirname Linux dijelaskan untuk pemula (4 contoh) Cara mengkloning disk dengan perintah Linux ddLinux