我对 bash 的世界还很陌生。我正在尝试实现一件事,那就是拥有一种更易于阅读的命令形式。
例如:我通常需要做
su - <user>
我想做的是输入changeto <user>
,然后当我在后端按 Enter 时,
su - <user>
应该执行实际的命令。
答案1
您可以使用别名或简单的 shell 函数来完成此操作。
使用别名:
alias changeto='su -'
具有外壳功能:
changeto () {
su - "$@"
}
在命令行上使用时,这两者的行为相同。
您可以将其中一个(但不是两个)放在您通常放置别名定义的任何位置,最有可能放入~/.bashrc
或~/.bash_aliases
如果您用作bash
交互式 shell。别名或 shell 函数将在下一个您启动的 shell(例如,如果您打开一个新终端)。
如果使用别名,那么当您使用该命令时,changeto
shell会简单地替换该单词。su -
您使用的任何其他参数(例如用户名)将被标记到该参数的末尾。
如果使用 shell 函数,shell 将调用su -
您传递给该函数的任何其他参数。在这种情况下,效果与别名相同。