Bash Zsh'&>/dev/null&'别名?

Bash Zsh'&>/dev/null&'别名?,bash,alias,zsh,Bash,Alias,Zsh,我发现自己一直在添加&>/dev/null&那么有没有一种方法可以将它添加为一个别名,比如bgh,这样我就可以说像rails服务器bgh 我尝试过使用全局别名和后缀别名,但它们似乎不能满足我的需要。在rails服务器&>/dev/null&>这样的情况下,&>/dev/null&>角色的实际术语是什么?它被认为是命令选项还是参数 谢谢 显式安装zsh并在那里运行它会执行相同的操作: ~ % bgh() { "$@" &>/dev/null & } ~ % bgh

我发现自己一直在添加&>/dev/null&那么有没有一种方法可以将它添加为一个别名,比如bgh,这样我就可以说像rails服务器bgh

我尝试过使用全局别名和后缀别名,但它们似乎不能满足我的需要。在rails服务器&>/dev/null&>这样的情况下,&>/dev/null&>角色的实际术语是什么?它被认为是命令选项还是参数

谢谢

显式安装zsh并在那里运行它会执行相同的操作:

 ~ % bgh() { "$@" &>/dev/null & }    
 ~ % bgh sleep 1
[2] 6482
 ~ % 
[2]  + done       "$@" &> /dev/null
要使其符合POSIX标准,&>可能无法在每个shell中工作,我们可以使用以下方法:

~$ bgh() { "$@" >/dev/null 2>&1 & }
显式安装zsh并在那里运行它会执行相同的操作:

 ~ % bgh() { "$@" &>/dev/null & }    
 ~ % bgh sleep 1
[2] 6482
 ~ % 
[2]  + done       "$@" &> /dev/null
要使其符合POSIX标准,&>可能无法在每个shell中工作,我们可以使用以下方法:

~$ bgh() { "$@" >/dev/null 2>&1 & }

您确实可以使用zsh中的别名执行此操作:

alias -g bgh='&> /dev/null &'
和测试

$ man zsh bgh
[1] 18863
$
[1]  + done       man zsh &> /dev/null

即使我个人不会在别名中包含背景信息。

您确实可以使用zsh中的别名:

alias -g bgh='&> /dev/null &'
和测试

$ man zsh bgh
[1] 18863
$
[1]  + done       man zsh &> /dev/null

即使我个人不会将背景信息包括在别名中。

你反对bgh rails服务器而不是rails服务器bgh吗?换句话说,定义一个函数,按照您的描述运行命令行的其余部分。不,那完全可以!您是否反对bgh rails服务器而不是rails服务器bgh?换句话说,定义一个函数,按照您的描述运行命令行的其余部分。不,那完全可以!谢谢你的功能!但是每次我输入bgh函数时,我都会在'&'@user2736286附近得到:zsh:parse error,我无法重现这个错误。你确定你输入的内容和给出的一模一样吗?嗯,该死,我用bash。。。Lemme安装zsh✓。。。为了清楚起见,我针对zsh 5.0.5进行了测试,并发现它是有效的……如果您在POSIX兼容模式下运行zsh,这可能会破坏它-&>与POSIX不兼容。不过,如果您想要POSIX合规性,为什么要使用zsh…谢谢您的功能!但是每次我输入bgh函数时,我都会在'&'@user2736286附近得到:zsh:parse error,我无法重现这个错误。你确定你输入的内容和给出的一模一样吗?嗯,该死,我用bash。。。Lemme安装zsh✓。。。为了清楚起见,我针对zsh 5.0.5进行了测试,并发现它是有效的……如果您在POSIX兼容模式下运行zsh,这可能会破坏它-&>与POSIX不兼容。但是如果您想要POSIX兼容性,为什么要使用zsh。。。