OK, jadi sourcejalankan skrip di shell saat ini dan .secara terpisah, seperti yang dijelaskan dalam menjalankan skrip dengan "." Dan dengan "sumber" misalnya, tetapi, khususnya, di .bashrcfile saya , saya punya:
[ -f ~/.bash_aliases ] && source ~/.bash_aliases
[ -f ~/.git-completion.bash ] && source ~/.git-completion.bash
[ -s ~/.autojump/etc/profile.d/autojump.sh ] && source ~/.autojump/etc/profile.d/autojump.sh
Bisakah saya ganti ini dengan:
[ -f ~/.bash_aliases ] && . ~/.bash_aliases
[ -f ~/.git-completion.bash ] && . ~/.git-completion.bash
[ -s ~/.autojump/etc/profile.d/autojump.sh ] && . ~/.autojump/etc/profile.d/autojump.sh
Apakah itu akan berfungsi pada OS X - apakah itu masalah "POSIX"?
Saya mencobanya dan di atas sepertinya masih berfungsi di Ubuntu (jadi mereka benar-benar bekerja dengan keduanya sourcedan ., yaitu, mereka memberi saya fungsionalitas yang diinginkan di shell). Haruskah saya memilih satu dari yang lain, atau saya kehilangan sesuatu?
FWIW, pada OS X, saya sumber .bashrcdari saya .bash_profile.
sourcemenjalankan skrip di shell saat ini dan .secara terpisah"? Mereka berdua menjalankannya di shell saat ini; kalau tidak, tidak akan ada gunanya