2012-07-30 131 views
0

我在.bashrc中有一段代碼,每次運行shell(我通常使用konsole)時,會出現一個開關盒,給出哪個分支或主幹使用。例如:如何僅在第一次打開konsole時運行指定的.bashrc代碼

1) V0230 
2) V0300 
3) Dev 

Enter Option: __ 

$ PROJECT_HOME和其他變量是根據所做的選擇而設置的。

令人討厭的是,每當我打開一個新的標籤時,它就會出現在同一個屏幕上。 但我想打開一個新的konsole並使用不同的分支,所以,簡單地導出一個變種不可能是解決方案

只有當konsole新屏幕打開時,才能運行此代碼。也許製作alias konsole=konsole --run <desired-function>。 konsole的文件沒有給予幫助,甚至沒有man konsole只是konsole --help

回答

1

只需創建一個別名:

$ alias konsole_select_branch='SELECT_BRANCH=true konsole' 

,並在您.bashrc

if [ -n "$SELECT_BRANCH" ] 
then 
    # select branch 
fi 

和使用的konsole或konsole_select_branch是否要選擇一個分支或只打開一個標籤或窗口。

+0

它的工作,唯一奇怪的是,當我通過Alt + F2「konsole」執行時,它不顯示分支的開關情況。 – 2012-07-30 21:16:11

0

您可以在.bashrc中放置一個腳本,它會部分覆蓋.bashrc; zsh自動完成設施做了類似的事情,例如也許做一些像

if [ -f $HOME/.somebashthing; ]; then 
    . $HOME/.somebashthing 
else 
    read SOMETHING 
    echo SOMEVAR=$SOMETHING > $HOME/.somebashthing 
fi 

這只是一個草圖;這取決於你填寫的細節。

相關問題