2017-02-01 25 views
0

cd'ing我剛纔寫的這個功能在shell腳本新鮮克隆庫

clone_and_dev() { 
    REPO=$1 
    echo 
    echo "Beginning process for the $REPO repository..." 
    git clone [email protected]:keyfer/$REPO.git 
    cd "$REPO" 
} 

問題在於,該cd命令似乎不工作。我想知道是否有辦法做這項工作。

謝謝!

+1

難道這包含在一個腳本並運行像'。/ script'或'bash script'這樣的腳本?如果是,'cd'不起作用,因爲它發生在一個子shell中,它不會影響父shell。但是,如果在同一個腳本中調用函數「沒有效果」,那麼我不確定。 –

+0

@benjamin這是〜/ bin中的可執行文件,然後通過在終端中運行'clonescipt'來調用。這個腳本還有其他部分,它調用函數並傳遞參數。 –

+0

然後它不能改變你的目錄,看例如[這個問題](http://stackoverflow.com/questions/255414/why-doesnt-cd-work-in-a-bash-shell-script? noredirect = 1&lq = 1)和[BashFAQ 60](http://mywiki.wooledge.org/BashFAQ/060)。 –

回答

0

您需要添加一個啓動CMD/K啓動CMD/K 請參閱「這裏的新窗口處的命令」:

clone_and_dev() { 
    REPO=$1 
    echo 
    echo "Beginning process for the $REPO repository..." 
    git clone [email protected]:keyfer/$REPO.git 
    cd "$REPO" 
    start cmd /k 
}