Bash
保持文件數據對 Bash 始終可用,無需重複執行(也在重新啟動後)
我有一個名為的文件
~/myScripts/assignments.sh
,其中包含各種分配,例如變數和別名。這是該文件的味道:drt="/var/www/html" rss="/etc/init.d/php*-fpm restart && systemctl restart nginx.service" alias drt="cd ${drt}" alias rss="${rss}"
從我完成作業系統安裝的那一刻起,我就經常使用這些任務,尤其是為我的網路伺服器和相鄰軟體的安裝、配置和維護編寫更簡潔的腳本。
因此,在任何 Bash 會話開始後(也在 a 之後),始終導出此文件至關重要,其數據將始終在所有 Bash 會話中可用
reboot
。為此,我想到了以下糟糕的腳本:
source ~/myScripts/assignments.sh # Immediate availability; printf "\n%s" "source ~/myScripts/assignments.sh" >> ~/.profile cat > "cron_daily.sh" <<< "source ~/myScripts/assignments.sh" crontab <<-"CRONTAB" 0 0 * * * ~/myScripts/cron_daily.sh # Permanent availability (after the one minute gap); CRONTAB
什麼是實現上述狀態的好方法?
更新
我想避免採購文件,然後
source ~/myScripts/assignments.sh
在 bash.bashrc 中添加的原因是我看到一些開發人員通常不願意採購bash.bashrc
。雖然,當文件不是自定義的,或者只有這麼小的變化時,它通常不是問題。
如果“所有” bash 會話都需要分配,只需將文件放在類似的地方
/etc/assignments
並從/etc/bash.bashrc
.將此附加到
/etc/bash.bashrc
:source /etc/assignments
這樣,您就可以在所有 bash 會話中為每個使用者使用所有定義,並且可以將資訊保存在單獨的文件中。