参数前没有 space 的 xargs(或其他东西)
xargs (or something else) without space before parameter
我想执行这样的操作(git squash):
git rebase -i HEAD~3
从 git log
中提取 3:
git log | blabla | xargs git rebase -i HEAD~
这不起作用,因为 xargs 在 HEAD~
之后插入了一个 space。
问题是我想给这个命令加上别名,所以我不能只使用
git rebase -i HEAD~`git log | blabla`
因为这个数字会在我定义别名时计算。
我不必使用 xargs
,我只需要一个别名(最好不是函数)。
试试这个:
git log | blabla | xargs -i bash -c 'git rebase -i HEAD~{}'
您可以使用 xargs
的 -I
选项:
git log | blabla | xargs -I% git rebase -i HEAD~%
我想执行这样的操作(git squash):
git rebase -i HEAD~3
从 git log
中提取 3:
git log | blabla | xargs git rebase -i HEAD~
这不起作用,因为 xargs 在 HEAD~
之后插入了一个 space。
问题是我想给这个命令加上别名,所以我不能只使用
git rebase -i HEAD~`git log | blabla`
因为这个数字会在我定义别名时计算。
我不必使用 xargs
,我只需要一个别名(最好不是函数)。
试试这个:
git log | blabla | xargs -i bash -c 'git rebase -i HEAD~{}'
您可以使用 xargs
的 -I
选项:
git log | blabla | xargs -I% git rebase -i HEAD~%