如何在没有空格的情况下向bash别名添加参数?

Put*_*nik 11 bash alias

我们可以轻松做到:

myalias='command param1 param2'
Run Code Online (Sandbox Code Playgroud)

然后myalias param3运行

command param1 param2 param3
Run Code Online (Sandbox Code Playgroud)

我需要一个运行相同但没有最后一个“空格”的别名:

command param1 param2param3
Run Code Online (Sandbox Code Playgroud)

例如,我在 /24 子网中有许多服务器,需要使用 ip 运行相同的命令。所以我想要别名,command param1 192.168.0.然后运行myalias 103,命令将应用于 192.168.0.103。

我试图$1在别名的末尾添加但没有运气。

Joe*_*ley 9

如果您乐于使用某个函数,则可以执行以下操作:

command(){
"$1" "$2" "192.168.0.${3}"
}
Run Code Online (Sandbox Code Playgroud)

如果我用一个虚拟命令测试这个:

mycommand(){
$1 "130.200.68.${2}"
}

$ mycommand ping 180
Run Code Online (Sandbox Code Playgroud)

将使用添加的 IP 的最后一部分 ping 服务器。