我最近在我的Windows 64位(两个系统中分别为Windows 7和10)中安装了Git For Windows版本2.19.1.windows.1。
现在,我创建了以下脚本来轻松执行一些常规任务,而无需单独编写每条指令:
#!/bin/bash
## Contains functions and methods that can be executed inside Vagrant SSH Session
export SCRIPT_PATH="$(cd "$(dirname "$0")"; pwd -P)"
export PROJECT_ROOT_PATH="/var/www" PROJECT_ROOT_DIR="/var/www" ROOT_FOLDER="/var/www"
function fcc() {
echo "########## Frontend Cache clear begins #############"
[[ "$PWD" =~ "frontend/app" ]] && cd frontend/app
rm -rf webroot/cache_js && rm -rf webroot/cache_css
mkdir -m 777 webroot/cache_js && mkdir -m 777 webroot/cache_css
Console/cake AssetCompress.AssetCompress build -f
cat /dev/null > ~/.bash_history && history -wc && history -cw && exit
cd /var/www
echo "########## Frontend Cache clear ends #############"
keep_shell_open
}
function bocc() {
...
}
function bcc() {
...
}
function succ() {
...
}
function keep_shell_open() { exec $SHELL; };
现在,当通过Gitbash终端转到脚本目录时,我按如下所示注册了脚本,它意外地打开了GitBash的C:\Program Files\Git\usr\bin
目录:
. ./VagrantGuestScript.sh
然后,当我执行此脚本的“ fcc”功能时,它仅执行前两行或三行,然后关闭终端。
谁能解释为什么在尝试注册脚本时为什么会打开Gitbash的bin路径以及为什么只执行函数“ fcc”的2/3行后就关闭了终端?