我的 .bash_aliases 文件填充了单字母别名(例如 o foroctave-cli
和 r for sudo reboot
.
有一段时间我一直想实现 BASH 的内置计算器来进行快速计算,主要是整数乘法和幂运算。有时我会echo $((expression))
在终端中运行,但是最好为它做一个速记,这样我就可以简单地写
c expression
进入一个终端。声明类似的东西是理想的
alias c="echo $(($@))"
进入 .bash_aliases 文件,但这不起作用(它打印 0 以及未解决的表达式)。我必须以什么方式修改上面的命令才能将“表达式”c expression
传递到echo $(($@))
. 我有在 .bash_aliases 文件中包含一个函数的想法,但是不知道如何正确引导参数。
别名不能采用位置参数。为此,您需要一个功能:
这不是什么新鲜事,也不是回避关于别名的问题。这里、这里、这里和其他十几个帖子也有同样的内容。
虽然在某些情况下可以使用 来“模拟”别名的行为
xargs
,但该方法容易出错,难以维护,并且无法始终如一地工作。一般来说,如果您出于某种原因不想使用函数但想要使用命令行实用程序来执行计算,请使用Any command line calculator for Ubuntu 中给出的建议?. 像那些建议的专用工具可以做的不仅仅是 bash 算术扩展,这是另一个好处。