已经提出了类似的问题,但由于我是新手,Unix
由于上下文,我不清楚答案。我想要做的是将一个命令的输出作为参数传递给另一个。我正在使用 git 进行源代码控制并在三个不同的分支上工作。
每当我需要提交时,我都必须检查我的分支,然后给出相应的命令
git pull --rebase origin <branch-name>
Run Code Online (Sandbox Code Playgroud)
我想写一个别名,git-rebase
它会做的是首先它会执行git branch
。
git branch 的输出如下所示
experiment
*master
new feature
Run Code Online (Sandbox Code Playgroud)
因此,如果除了 master 分支之外还有两个分支,那么它将显示所有分支,并且当前分支将被星标。我想提取星标行,然后将其输出传递给上述命令。
我也想抑制命令的输出git branch
。我这样做不是因为我懒得输入整个命令,而是因为我想更多地了解 unix bash 的强大功能。希望从中学到一些东西
我想检查给定的命令是否存在bash
,我只关心 bash 的本机命令而不是用户编写的脚本。当我提到native commands
我的意思是所有那些通常对用户可用的命令。
有两个命令
command -v
type
Run Code Online (Sandbox Code Playgroud)
可用于检查命令是否存在。但它也会为用户编写的脚本返回 true,而我想将自己限制在内置命令中。
注意:我不只是试图区分 abash builtin
和其他命令,因为
输入 -t 触摸
给出file
作为类型,但默认情况下这是用户可用的命令。但是,如果用户编写脚本然后尝试运行它,那么我想对其进行过滤。
任何帮助表示赞赏。