Jawaban:
sourcedan .identik di Bash .
Bagi siapa saja yang mungkin ingin memverifikasi bahwa perintah itu hanya sinonim dan tidak lebih, lihat kode sumber , katakan untuk versi 4.3, dan periksa file builtins/source.def. Anda akan membaca bahwa kedua built-in perintah, sourcedan ., menggunakan fungsi yang sama: source_builtin.
.adalah perintah sumber tradisional, yang diwarisi dari shell bourne kuno. sourcehanyalah bash builtin yang melakukan persis sama ., mungkin karena itu lebih mudah dibaca ( .sendirian mungkin sulit dikenali dengan font kecil). Anda akan melihat help sourcedan help .menampilkan info yang sama.
man bashdan kemudian mencari sourceAnda akan melihat bahwa itu source filename [arguments]adalah sinonim untuk . filename [arguments].
.identik dengan sourcedalam bash, tetapi tidak dalam POSIX sh, jadi Anda harus menggunakan .jika skrip Anda dijalankan oleh / bin / sh. Perhatikan bahwa bash mengklaim berjalan seperti POSIX sh ketika dipanggil sebagai / bin / sh, tetapi menerima sourcetanpa keluhan.
Perilaku ini telah menggigit saya, skrip diuji dengan bash sebagai / bin / sh gagal ketika dijalankan di bawah abu, misalnya.
#!/bin/shAnda tidak boleh menganggap shell mendukung apa pun kecuali fitur POSIX. pubs.opengroup.org/onlinepubs/9699919799/utilities/…