我是shell脚本的新手,无法解决这个问题.如果您不熟悉,命令git branch会返回类似的内容
* develop
master
Run Code Online (Sandbox Code Playgroud)
,星号标记当前签出的分支.当我在终端中运行以下内容时:
git branch | grep "*"
Run Code Online (Sandbox Code Playgroud)
我明白了:
* develop
Run Code Online (Sandbox Code Playgroud)
正如所料.
但是,当我跑
test=$(git branch | grep "*")
Run Code Online (Sandbox Code Playgroud)
要么
test=`git branch | grep "*"`
Run Code Online (Sandbox Code Playgroud)
然后
echo $test
Run Code Online (Sandbox Code Playgroud)
,结果只是目录中的文件列表.我们如何使test ="*develop"的价值?
然后下一步(一旦我们将"*develop"变成一个名为test的变量),就是得到子串.这只是以下几点吗?
currentBranch=${test:2}
Run Code Online (Sandbox Code Playgroud)
我正在玩那个子串函数,我得到了很多"坏替换"错误,不知道为什么.