cut:分隔符必须是单个字符

cut:分隔符必须是单个字符

我正在尝试获取我的仓库中所有分支的分支名称,但出现了此错误

cut: the delimiter must be a single character

这是我的脚本文件

git branch -a | grep -v HEAD | cut -d  ' /' -f3 | grep -v master

答案1

' /'是两个字符(空格和斜线),并且正如错误消息所说,它必须是一个字符。

如果你确实需要根据 来截断字符串,一个可能的解决方案是用你知道它不会出现在 的输出中的单个字符' /'替换。假设。那么完整的命令将是:' /'git branch -a | grep -v HEAD'%'

git branch -a | grep -v HEAD | sed "s/ \//%/ | "cut -d'%' -f3 | grep -v master

答案2

看起来您想要获取所有本地分支和远程跟踪分支的名称。

我会这样做:

git for-each-ref --format='%(refname:short)' \
    'refs/heads/**' 'refs/remotes/*/**' | grep -v master

这两人的名字**都是裁判。/

相关内容