【发布时间】:2019-12-01 20:53:00
【问题描述】:
当我使用 Kubernetes 时,我想运行依赖于我的活动分支的命令。因此,在给定当前分支的情况下,拥有别名将帮助我处理自动运行命令的其他别名。
我正在尝试使用函数将当前活动本地分支的名称存储到 bash 别名中,这样我就可以运行其他脚本而不必担心指定活动分支,但我一直遇到错误。
function branch ()
{
local result='git branch | grep ^\* | cut -c 3-';
echo "$result"
}
alias get_branch=$(branch)
但是当我尝试运行它时,我得到:
usage: git [--version] [--help] [-C <path>] [-c <name>=<value>]
[--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
[-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare]
[--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
<command> [<args>
.... (Same output as just entering 'git')
(cut -c 3- 删除* 和它后面的空格,当活动的 git 分支被列出时)
例如
* feature/ch20372
ch20372
ch12345
奇怪的是这两项工作:
alias IMLAZY='git branch |grep \* | cut -d " " -f2'
alias TEST='git branch | grep ^\* | cut -c 3-'
这让我思考
我的
~/.bash_aliases可能是语法问题吗?ZSH 有问题吗?
函数中某处的语法错误 定义?
【问题讨论】:
-
@EncryptedWatermelon 不...这仅与该问题相关。当然,我正在使用类似的命令,但我想知道如何将其保存在函数的 bash 别名中。
-
该错误似乎与您显示的代码无关。
-
输入
get_branch会怎样? -
我刚刚尝试运行您的代码,它运行正常。你是如何运行这个 sn-p 代码的?您收到的错误与代码似乎不相关。