Pendahuluan
Di sistem Linux, source adalah perintah shell bawaan yang membaca dan mengeksekusi konten file di shell saat ini. File-file ini biasanya berisi daftar perintah yang dikirimkan ke penerjemah TCL untuk dibaca dan dijalankan.
Tutorial ini akan menjelaskan cara kerja perintah sumber dan kapan menggunakannya.
Prasyarat
- Sistem yang menjalankan distribusi Linux (pelajari cara menginstal Ubuntu 20.04, cara menginstal CentOS 7, atau cara menginstal Arch Linux)
- Akun dengan hak istimewa sudo
- Akses ke jendela terminal/baris perintah
Sintaks Perintah Sumber
sumber perintah menggunakan sintaks berikut:
source [filename] [arguments] Dimana:
[filename]:Nama atau jalur ke file yang Anda inginkan untuk dijalankan oleh perintah sumber.[arguments]:Setiap argumen yang Anda berikan menjadi parameter posisi saat file dieksekusi.
Karakter titik (titik) dapat digunakan sebagai pengganti source perintah, menghasilkan output yang sama:
. [filename] [arguments] Contoh Perintah Sumber Linux
Berikut adalah beberapa cara Anda dapat menggunakan source perintah:
Luluskan Argumen
Buat file teks bernama example.txt di Beranda direktori dengan konten berikut:
pwd
date
time
Gunakan source perintah untuk meneruskan konten file ini sebagai argumen:
source example.txt
Outputnya menunjukkan bahwa source perintah bergerak baris demi baris, menjalankan perintah apa pun yang tercantum di example.txt .
Untuk contoh yang lebih kompleks, ubah konten example.txt ke:
echo "The current directory is:"
pwd
echo "Today's date is:"
date
echo "The time is:"
time
Pindahkan file ke Home/source_command/example . Dengan source perintah, berikan konten file sebagai argumen menggunakan path lengkap ke file:
source source_command/example/example.txt
Baca File Konfigurasi
source perintah juga memungkinkan Anda untuk membaca variabel dari file. Mulailah dengan membuat file konfigurasi contoh example_config.sh di Beranda direktori dan menambahkan konten berikut:
VAR1="a"
VAR2="b"
VAR3="c" Buat skrip bash bernama example_bash.sh dan tambahkan berikut ini:
#!/usr/bin/env bash
source example_config.sh
echo "VAR1 is $VAR1"
echo "VAR2 is $VAR2"
echo "VAR3 is $VAR3"
source perintah mengizinkan example_bash.sh untuk membaca variabel VAR1 , VAR2 , dan VAR3 Anda definisikan di example_config.sh .
Jalankan example_bash.sh skrip menggunakan source perintah:
source example_bash.sh
Fungsi Sumber
Jika Anda memiliki fungsi yang Anda gunakan di beberapa skrip yang berbeda, Anda dapat menyimpannya sebagai file terpisah dan menggunakan source perintah untuk merujuknya saat menulis skrip.
Misalnya, mulailah dengan membuat fungsi check_root.sh yang memeriksa apakah pengguna yang menjalankan skrip adalah pengguna root:
check_root() {
if [[ $EUID -ne 0 ]]; then
echo "You must run this script as root"
exit 1
fi
}
Buat skrip bernama example_script.sh dan gunakan source perintah untuk menyisipkan check_root.sh fungsi:
#!/usr/bin/env bash
source check_root.sh
check_root
echo "This is the root user"
Menjalankan skrip ini sebagai pengguna non-root menghasilkan "You must run this script as root" sebagai output dan keluar dari skrip:
bash example_script.sh
Menjalankan skrip sebagai pengguna root menunjukkan "This is the root user" sebagai outputnya:
sudo bash example_script.sh
Segarkan Lingkungan Shell Saat Ini
Untuk contoh ini, kami membuat perintah alias ll :
alias ll = 'ls -l' Perintah ini mencantumkan file dalam direktori saat ini menggunakan format yang diperluas:
Namun, perintah ini hanya berfungsi di sesi shell saat ini. Untuk membuatnya permanen, buka bashrc file dengan:
sudo nano ~/.bashrc
Di bawah #some more ls aliases bagian, tambahkan berikut ini:
alias ll = 'ls -l'
Segarkan lingkungan shell saat ini dengan source perintah:
source ~/.bashrc