我通常ps -elf | grep proceesname用来获得名为的进程的详细描述processname.我认为我必须为此写太多.
现在我想的是创建一个像bash一样的别名
alias lsps='ps -elf | grep $1'
Run Code Online (Sandbox Code Playgroud)
这将仅通过使用给出以上详细描述lsps processname.
所以,我的问题是如何创建一个接受参数的bash别名.
PS:我知道我可以为上述任务编写一个shell脚本,但我只是想知道如何用bash别名来做.
Igo*_*bin 60
非常简单;
alias lsps='ps -elf | grep'
Run Code Online (Sandbox Code Playgroud)
命令行参数将自动添加到别名的末尾:
lsps arg1 arg2 arg3 => converted to => ps -elf | grep arg1 arg2 arg3
Run Code Online (Sandbox Code Playgroud)
仅当您想要在别名的末尾添加参数时,这才有效.
如果要在扩展命令行中获取别名的参数,则必须使用以下函数:
例如:
lsps()
{
ps -elf | grep "$1" | grep -v grep
}
Run Code Online (Sandbox Code Playgroud)
函数和别名可以保存在您的~/.bashrc文件中)或包含在其中的文件中:
$ cat /tmp/.bash_aliases
lsps()
{
ps -elf | grep "$1" | grep -v grep
}
$ . /tmp/.bash_aliases
$
Run Code Online (Sandbox Code Playgroud)
用这个:
alias lsps='ps -elf | grep'
Run Code Online (Sandbox Code Playgroud)
然后你可以发出这个:
lsps processname
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
30953 次 |
| 最近记录: |