เชเซ เชคเชฎเชจเซ เชถเซเชงเชฎเชพเช เช เชชเซเชทเซเช เชฎเชณเซเชฏเซเช เชนเซเชฏ, เชคเซ เชคเชฎเซ เชเชฆเชพเช เชฌเซเชถ เชเชฒเชพเชตเชตเชพเชจเซ เชเซเชเชฒเซเช เชธเชฎเชธเซเชฏเชพ เชนเชฒ เชเชฐเชตเชพเชจเซ เชชเซเชฐเชฏเชพเชธ เชเชฐเซ เชฐเชนเซเชฏเชพเช เชเซ.
เชเชฆเชพเช เชคเชฎเชพเชฐเซเช เชฌเซเชถ เชเชจเซเชตเชพเชฏเชฐเซเชจเชฎเซเชจเซเช เชเชจเซเชตเชพเชฏเชฐเซเชจเชฎเซเชจเซเช เชตเซเชฐเซเชเชฌเชฒ เชธเซเช เชเชฐเซ เชฐเชนเซเชฏเซเช เชจเชฅเซ เช เชจเซ เชคเชฎเซ เชถเชพ เชฎเชพเชเซ เชธเชฎเชเซ เชถเชเชคเชพ เชจเชฅเซ. เชเซเชฏเชพเช เชธเซเชงเซ เชคเซ เชเชพเชฎ เชจ เชเชฐเซ เชคเซเชฏเชพเช เชธเซเชงเซ เชคเชฎเซ เชตเชฟเชตเชฟเชง เชฌเซเชถ เชฌเซเช เชซเชพเชเชฒเซ เช เชฅเชตเชพ เชชเซเชฐเซเชซเชพเชเชฒเซเชธ เช เชฅเชตเชพ เชฌเชงเซ เชซเชพเชเชฒเซเชฎเชพเช เชฐเซเชจเซเชกเชฎเชฎเชพเช เชเชเชเช เช เชเชตเชพเชฏเซเช เชนเชถเซ.
เชเซเช เชชเชฃ เชธเชเชเซเชเซเชฎเชพเช, เช เชจเซเชเชงเชจเซ เชฎเซเชฆเซเชฆเซ เช เชเซ เชเซ เชฌเซเชถ เชถเชฐเซ เชเชฐเชตเชพเชจเซ เชชเซเชฐเชเซเชฐเชฟเชฏเชพ เชถเชเซเชฏ เชคเซเชเชฒเซ เชธเชฐเชณ เชฐเซเชคเซ เชเซเช เชตเชตเซ เชเซเชฅเซ เชคเชฎเซ เชธเชฎเชธเซเชฏเชพเชเชจเซ เชธเชพเชฎเชจเซ เชเชฐเซ เชถเชเซ.
เชเชเซเชคเชฟ
เช เชซเซเชฒเซเชเชพเชฐเซเช เชฌเซเชถ เชเชฒเชพเชตเชคเซ เชตเชเชคเซ เชฌเชงเซ เชชเซเชฐเชเซเชฐเชฟเชฏเชพเชเชจเซ เชธเชพเชฐเชพเชเชถ เชเชชเซ เชเซ.
เชนเชตเซ เชเชพเชฒเซ เชฆเชฐเซเช เชญเชพเช เชชเชฐ เชจเชเซเชเชฅเซ เชจเชเชฐ เชเชฐเซเช.
เชฒเซเชเชฟเชจ เชถเซเชฒ?
เชชเซเชฐเชฅเชฎ เชคเชฎเชพเชฐเซ เชชเชธเชเชฆ เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ เชเซ เชคเชฎเซ เชฒเซเชเชฟเชจ เชถเซเชฒเชฎเชพเช เชเซ เชเซ เชจเชนเซเช.
เชฒเซเชเชฟเชจ เชถเซเชฒ เช เชชเซเชฐเชฅเชฎ เชถเซเชฒ เชเซ เชเซ เชคเชฎเซ เชฆเชพเชเชฒ เชเชฐเซ เชเซ เชเซเชฏเชพเชฐเซ เชคเชฎเซ เชเชจเซเชเชฐเซเชเซเชเชฟเชต เชธเชคเซเชฐ เชฎเชพเชเซ เชฒเซเช เชเชจ เชเชฐเซ เชเซ. เชฒเซเชเชฟเชจ เชถเซเชฒเชจเซ เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพเชจเชพเชฎ เช
เชจเซ เชชเชพเชธเชตเชฐเซเชกเชจเซ เชเชฐเซเชฐ เชจเชฅเซ. เชคเชฎเซ เชงเซเชตเช เชเชฎเซเชฐเซเชจเซ เชฒเซเชเชฟเชจ เชถเซเชฒเชจเซ เชชเซเชฐเชพเชฐเชเชญ เชเชฐเชตเชพ เชฆเชฌเชพเชฃ เชเชฐเซ เชถเชเซ เชเซ --login
เชเซเชฏเชพเชฐเซ เชฌเซเชฒเชพเชตเชตเชพเชฎเชพเช เชเชตเซ เชเซ bash
, เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ:
bash --เชฒเซเชเชฟเชจ
เชฒเซเชเชฟเชจ เชถเซเชฒ เชฌเซเช เชเชจเซเชตเชพเชฏเชฐเซเชจเชฎเซเชจเซเช เชธเซเช เชเชฐเซ เชเซ เชเซเชฏเชพเชฐเซ เชคเชฎเซ เชชเซเชฐเชฅเชฎ เชฌเซเชถ เชถเซเชฒ เชถเชฐเซ เชเชฐเซ เชเซ.
เชเชจเซเชเชฐเซเชเซเชเชฟเชต?
เชชเชเซ เชคเชฎเซ เชจเชเซเชเซ เชเชฐเซ เชเซ เชถเซเชฒ เชเชจเซเชเชฐเซเชเซเชเชฟเชต เชเซ เชเซ เชจเชนเซเช.
เช เชเชฒเชจเซ เชนเชพเชเชฐเซ เชฆเซเชตเชพเชฐเชพ เชเชเชพเชธเซ เชถเชเชพเชฏ เชเซ PS1
(เชคเซ เชเชฆเซเชถ เชเชจเชชเซเช เชซเชเชเซเชถเชจ เชเชจเซเชธเซเชเซเชฒ เชเชฐเซ เชเซ):
เชเซ [ "${PS1-}" ]; เชชเชเซ เชเชเซ เชเชจเซเชเชฐเซเชเซเชเชฟเชต เช เชจเซเชฏ เชเชเซ เชจเซเชจ-เชเชจเซเชเชฐเซเชเซเชเชฟเชต เชซเชพเช
เช
เชฅเชตเชพ เชตเชฟเชเชฒเซเชช เชธเซเช เชเซ เชเซ เชเซเชฎ เชคเซ เชเซเช -i
, เชเชพเชธ เชนเชพเชเชซเชจ เชตเซเชฐเซเชเชฌเชฒเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ -
bash เชฎเชพเช, เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ:
$echo$-
เชเซ เชเชเชเชชเซเชเชฎเชพเช เชชเซเชฐเชคเซเช เชนเซเชฏ i
, เชชเชเซ เชถเซเชฒ เชเชจเซเชเชฐเซเชเซเชเชฟเชต เชเซ.
เชฒเซเชเชฟเชจ เชถเซเชฒเชฎเชพเช?
เชเซ เชคเชฎเซ เชฒเซเชเชฟเชจ เชถเซเชฒเชฎเชพเช เชเซ, เชคเซ เชชเชเซ bash เชซเชพเชเชฒ เชฎเชพเชเซ เชเซเช เชเซ /etc/profile
เช
เชจเซ เชเซ เชคเซ เช
เชธเซเชคเชฟเชคเซเชตเชฎเชพเช เชนเซเชฏ เชคเซ เชเชพเชฒเซ เชเซ.
เชชเชเซ เชจเซเชเซเชจเชพ เชเซเชฐเชฎเชฎเชพเช เช เชคเซเชฐเชฃเชฎเชพเชเชฅเซ เชเซเชเชชเชฃ เชซเชพเชเชฒเชจเซ เชถเซเชงเซ:
~/.bash_profile ~/.bash_login ~/.profile
เชเซเชฏเชพเชฐเซ เชคเซ เชเช เชถเซเชงเซ เชเซ, เชคเซเชฏเชพเชฐเซ เชคเซ เชคเซเชจเซ เชถเชฐเซ เชเชฐเซ เชเซ เช เชจเซ เช เชจเซเชฏเชจเซ เชเซเชกเซ เชฆเซ เชเซ.
เชเชจเซเชเชฐเซเชเซเชเชฟเชต เชถเซเชฒเชฎเชพเช?
เชเซ เชคเชฎเซ เชฌเชฟเชจ-เชฒเซเชเชฟเชจ เชถเซเชฒเชฎเชพเช เชเซ, เชคเซ เชเชตเซเช เชฎเชพเชจเชตเชพเชฎเชพเช เชเชตเซ เชเซ เชเซ เชคเชฎเซ เชชเชนเซเชฒเชพเชฅเซ เช เชฒเซเชเชฟเชจ เชถเซเชฒเชฎเชพเช เชเซ, เชชเชฐเซเชฏเชพเชตเชฐเชฃ เชฐเซเชชเชฐเซเชเชพเชเชเชฟเชค เชฅเชฏเซเชฒ เชเซ เช เชจเซ เชตเชพเชฐเชธเชพเชฎเชพเช เชชเซเชฐเชพเชชเซเชค เชฅเชถเซ.
เช เชเชฟเชธเซเชธเชพเชฎเชพเช, เชจเซเชเซเชจเซ เชฌเซ เชซเชพเชเชฒเซ เชเซเชฐเชฎเชฎเชพเช เชเชฒเชพเชตเชตเชพเชฎเชพเช เชเชตเซ เชเซ, เชเซ เชคเซเช เช เชธเซเชคเชฟเชคเซเชตเชฎเชพเช เชเซ:
/etc/bash.bashrc ~/.bashrc
เชเซเช เชตเชฟเชเชฒเซเชช เชจเชฅเซ?
เชเซ เชคเชฎเซ เชฒเซเชเชฟเชจ เชถเซเชฒ เช เชฅเชตเชพ เชเชจเซเชเชฐเซเชเซเชเชฟเชต เชถเซเชฒเชฎเชพเช เชจ เชนเซเชต, เชคเซ เชคเชฎเชพเชฐเซเช เชตเชพเชคเชพเชตเชฐเชฃ เชเชฐเซเชเชฐ เชเชพเชฒเซ เชนเชถเซ. เช เชเชฃเซ เชฎเซเชเชเชตเชฃเชจเซเช เชเชพเชฐเชฃ เชฌเชจเซ เชเซ (เชเซเชฐเซเชจ เชเซเชฌ เชตเชฟเชถเซ เชจเซเชเซ เชเซเช).
เช เชเชฟเชธเซเชธเชพเชฎเชพเช bash เชเชฒเชจเซ เชเซเช เชเซ BASH_ENV
เชคเชฎเชพเชฐเชพ เชชเชฐเซเชฏเชพเชตเชฐเชฃ เช
เชจเซ เชคเซเชฏเชพเช เชเชฒเซเชฒเซเชเชฟเชค เช
เชจเซเชฐเซเชช เชซเชพเชเชฒ เชฌเชจเชพเชตเซ เชเซ.
เชธเชพเชฎเชพเชจเซเชฏ เชฎเซเชถเซเชเซเชฒเซเช เช เชจเซ เช เชเชเซเช เชพเชจเชพ เชจเชฟเชฏเชฎเซ
เชเซเชฐเซเชจ เชจเซเชเชฐเซเช
95% เชตเชเชค เชนเซเช เชฌเซเชถ เชธเซเชเชพเชฐเซเชเช เชชเชจเซ เชกเซเชฌเช เชเชฐเซเช เชเซเช เชเชพเชฐเชฃ เชเซ เชเซเชฐเซเชจ เชเซเชฌ เช เชชเซเชเซเชทเชพ เชฎเซเชเชฌ เชเชพเชฒเซ เชฐเชนเซเชฏเซเช เชจเชฅเซ.
เช เชถเชพเชช เชเชพเชฐเซเชฏ เชเซเชฏเชพเชฐเซ เชนเซเช เชคเซเชจเซ เชเชฎเชพเชจเซเชก เชฒเชพเชเชจ เชชเชฐ เชเชฒเชพเชตเซเช เชเซเช เชคเซเชฏเชพเชฐเซ เชธเชพเชฐเซเช เชเชพเชฎ เชเชฐเซ เชเซ, เชชเชฐเชเชคเซ เชเซเชฏเชพเชฐเซ เชนเซเช เชคเซเชจเซ เชเซเชฐเซเชจเซเชเชพเชฌเชฎเชพเช เชเชฒเชพเชตเซเช เชเซเช เชคเซเชฏเชพเชฐเซ เชจเชฟเชทเซเชซเชณ เชฅเชพเชฏ เชเซ.
เชคเซ เชฌเซ เชเชพเชฐเชฃเซ:
- เชเซเชฐเซเชจ เชเซเชฌเซเชธ เชเชจเซเชเชฐเซเชเซเชเชฟเชต เชจเชฅเซ.
- เชเชฎเชพเชจเซเชก เชฒเชพเชเชจ เชธเซเชเซเชฐเชฟเชชเซเชเซเชฅเซ เชตเชฟเชชเชฐเซเชค, เชเซเชฐเซเชจ เชเซเชฌเซเชธ เชถเซเชฒ เชชเชฐเซเชฏเชพเชตเชฐเชฃเชจเซ เชตเชพเชฐเชธเชพเชฎเชพเช เชฎเซเชณเชตเชคเซ เชจเชฅเซ.
เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ เชคเชฎเซ เชงเซเชฏเชพเชจ เชฐเชพเชเชถเซ เชจเชนเซเช เชเซ เชถเซเชฒ เชธเซเชเซเชฐเชฟเชชเซเช เชเชจเซเชเชฐเซเชเซเชเชฟเชต เชจเชฅเซ เชเชพเชฐเชฃ เชเซ เชชเชฐเซเชฏเชพเชตเชฐเชฃ เชเชจเซเชเชฐเซเชเซเชเชฟเชต เชถเซเชฒเชฎเชพเชเชฅเซ เชตเชพเชฐเชธเชพเชฎเชพเช เชฎเชณเซ เชเซ. เชเชจเซ เช
เชฐเซเชฅ เช เชเซ เชเซ เชฌเชงเซเช PATH
ะธ alias
เชคเชฎเชพเชฐเซ เช
เชชเซเชเซเชทเชพ เชฎเซเชเชฌ เชเซเช เชตเซเชฒ.
เช เชฎเชพเชเซ เชคเซ เชเชฃเซ เชตเชเชค เชเซเชเซเชเชธ เชธเซเช เชเชฐเชตเชพ เชฎเชพเชเซ เชเชฐเซเชฐเซ เชเซ PATH
เช
เชนเซเช เชเซเชตเชพ เชเซเชฐเซเชจ เชเชพเชฐเซเชฏ เชฎเชพเชเซ:
* * * * * PATH=${PATH}:/path/to/my/program/folder myprogram
เชธเซเชเซเชฐเชฟเชชเซเชเซ เชเชเชฌเซเชเชพเชจเซ เชฌเซเชฒเชพเชตเซ เชเซ
เชฌเซเชเซ เชธเชพเชฎเชพเชจเซเชฏ เชธเชฎเชธเซเชฏเชพ เช เชเซ เชเซ เชเซเชฏเชพเชฐเซ เชธเซเชเซเชฐเชฟเชชเซเชเซเชธ เชญเซเชฒเชฅเซ เชเชเชฌเซเชเชพเชจเซ เชเซเชฒ เชเชฐเชตเชพ เชฎเชพเชเซ เชเซเช เชตเชตเชพเชฎเชพเช เชเชตเซ เชเซ. เชฆเชพเชเซเชฒเชพ เชคเชฐเซเชเซ, /etc/profile
เชเชฒเซเชฒเซเช เชเชฐเซ ~/.bashrc
.
เช เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ เชคเซเชฏเชพเชฐเซ เชฅเชพเชฏ เชเซ เชเซเชฏเชพเชฐเซ เชเซเชเช เชเซเชเชฒเซเช เชญเซเชฒ เชธเซเชงเชพเชฐเชตเชพเชจเซ เชชเซเชฐเชฏเชพเชธ เชเชฐเซเชฏเซ เชนเซเชฏ เช เชจเซ เชฌเชงเซเช เชเชพเชฎ เชเชฐเชคเซเช เชนเซเชฏ เชคเซเชตเซเช เชฒเชพเชเซ. เชเชฎเชจเชธเซเชฌเซ, เชเซเชฏเชพเชฐเซ เชคเชฎเชพเชฐเซ เช เชตเชฟเชตเชฟเชง เชชเซเชฐเชเชพเชฐเชจเชพ เชธเชคเซเชฐเซเชจเซ เช เชฒเช เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชนเซเชฏ, เชคเซเชฏเชพเชฐเซ เชจเชตเซ เชธเชฎเชธเซเชฏเชพเช เชเชญเซ เชฅเชพเชฏ เชเซ.
เชธเซเชจเซเชกเชฌเซเชเซเชธเชตเชพเชณเซ เชกเซเชเชฐ เชเชฌเซ
เชถเซเชฒ เชเชฒเชพเชตเชตเชพเชจเซ เชชเซเชฐเชฏเซเช เชเชฐเชตเชพ เชฎเชพเชเซ, เชฎเซเช เชเช เชกเซเชเชฐ เชเชฎเซเช เชฌเชจเชพเชตเซ เชเซ เชเซเชจเซ เชเชชเชฏเซเช เชธเซเชฐเชเซเชทเชฟเชค เชตเชพเชคเชพเชตเชฐเชฃเชฎเชพเช เชถเซเชฒ เชเชฒเชพเชตเชตเชพเชจเซ เชกเซเชฌเช เชเชฐเชตเชพ เชฎเชพเชเซ เชฅเช เชถเชเซ เชเซ.
เชฒเซเชจเซเช:
$ docker run -n bs -d imiell/bash_startup
$ docker exec -ti bs bash
Dockerfile เชธเซเชฅเชฟเชค เชฅเชฏเซเชฒ เชเซ
เชฒเซเชเชฟเชจ เชฎเชพเชเซ เชฆเชฌเชพเชฃ เชเชฐเชตเชพ เช เชจเซ เชฒเซเชเชฟเชจ เชถเซเชฒเชจเซเช เช เชจเซเชเชฐเชฃ เชเชฐเชตเชพ เชฎเชพเชเซ:
$ bash --login
เชเชฒเซเชจเชพ เชธเชฎเซเชนเชจเซ เชเชเชพเชธเชตเชพ เชฎเชพเชเซ BASH_ENV
:
$ env | grep BASH_ENV
เชกเชฟเชฌเชเซเชเช เชฎเชพเชเซ crontab
เชเช เชธเชฐเชณ เชธเซเชเซเชฐเชฟเชชเซเช เชฆเชฐ เชฎเชฟเชจเชฟเชเซ เชเชฒเชพเชตเชตเชพเชฎเชพเช เชเชตเชถเซ (เชฎเชพเช /root/ascript
):
$ crontab -l
$ cat /var/log/script.log
เชธเซเชฐเซเชธ: www.habr.com