警告: 次のスクリプトを .bashrc に入れないでください。bash がリロードされ、.bashrc が何度もリロードされます (いずれにせよ Cc で停止可能)。キット/CDS スタッフの起動スクリプトでこのスクリプトを使用することをお勧めします。(リズムはおそらく) 警告 2 : file2source で何かが失敗すると、「トリック」全体が停止します。
このスクリプトを呼び出します: cshWrapper.csh
#! /bin/csh
# to launch using
# exec cshWrapper.csh file2source.sh
source $1
exec $SHELL -i
を使用して起動します
exec ./cshWrapper.csh file2source.sh
csh を起動し、ファイルを読み込み、同じ親 bash シェルに戻ります。
例 :
$> ps
PID TTY TIME CMD
7065 pts/0 00:00:02 bash
$>exec ./cshWrapper.csh toggle.csh
file sourced
1
$> echo $$
7065
私の場合、ファイル toggle.csh を使用します
#! /bin/csh
# source ./toggle.csh
if ! $?TOGGLE then
setenv TOGGLE 0
endif
if ($?TOGGLE) then
echo 'file sourced'
if ($TOGGLE == 0) then
setenv TOGGLE 1
else
setenv TOGGLE 0
endif
endif
echo $TOGGLE
それが役に立てば幸い