我想为一个长命令创建一个别名。但我无法逃脱,我想这是管道的问题。
我的原始命令
ps aux | grep gimp | awk '{ print $2 '\011' $11 }' | grep -v 'grep'我对别名的尝试
alias psa="ps aux | grep $1 | awk '{ print \$2 \"\011\" \$11 }' | grep -v 'grep'"但是我得到了一个错误,grep无法打开文件foo (当我做psa foo)
当我删除最后一部分| grep -v 'grep'时,awk会抛出相同的错误。
在shell脚本之前,我更喜欢别名。
发布于 2014-04-18 16:43:59
如果要插入参数,则需要使用函数:
psa() {
ps aux | grep "$1" | awk '{print $2 "\t" $11 }' | grep -v grep
}发布于 2014-04-18 16:43:09
通过为此使用一个函数,可以避免所有转义:
myps() {
ps aux | grep gimp | awk '{ print $2 "\011" $11 }' | grep -v 'grep'
}https://stackoverflow.com/questions/23158307
复制相似问题