当我确认一些东西时,我经常会得到这样的输出:
Ack: tmp/nonces/4e8c9698-https-www.google.com-kkEIoIiSEjUBRD.lRR_tT9V6ccE-mRPtTixYnWzzGcPpbIwx9scpDnE: Permission denied
Ack: tmp/nonces/4e8cbba9-https-www.google.com-kkEIoIiSEjUBRD.lRR_tT9V6ccE-oARiyZ2BwCEskqiPzrfQd1FI_fI: Permission denied
Ack: tmp/nonces/4e8d0b16-https-www.google.com-kkEIoIiSEjUBRD.lRR_tT9V6ccE-M8ARATBrrCt8Dzx_AUVyqQPlesE: Permission denied
Ack: tmp/nonces/4e8df921-https-www.google.com-kkEIoIiSEjUBRD.lRR_tT9V6ccE-qOogYRrIy2P4eFSD0dps0axw41k: Permission denied
Ack: tmp/nonces/4e8f25a5-https-www.google.com-kkEIoIiSEjUBRD.lRR_tT9V6ccE-.gfEmcarFxfuir1JeQeKjevK4Js: Permission denied
Ack: tmp/nonces/4e8f66ac-https-www.google.com-kkEIoIiSEjUBRD.lRR_tT9V6ccE-A_iNHhXoUELEWtENxyYp8H_HsJA: Permission denied
Ack: tmp/nonces/4e8f6ad6-https-www.google.com-kkEIoIiSEjUBRD.lRR_tT9V6ccE-xISGU82nDE6h.hGAKD7t8kfP3f0: Permission denied
Ack: tmp/nonces/4e8f6c43-https-www.google.com-kkEIoIiSEjUBRD.lRR_tT9V6ccE-8_4stPggeXhICZbspC7n3JPbbwU: Permission denied
Ack: tmp/nonces/4e9021f8-https-www.google.com-kkEIoIiSEjUBRD.lRR_tT9V6ccE-4LlZ.TfExXsf3L2woyFw9.LJF1U: Permission denied
Ack: tmp/nonces/4e90964d-https-www.google.com-kkEIoIiSEjUBRD.lRR_tT9V6ccE-MQcsEojzduPoDsosj.gnN5jPrmQ: Permission denied这是什么?我如何修复它/让它消失?
编辑:当我使用确认插件时,这只会在MacVim输出中发生。正常的Ack不会这样做。
发布于 2011-11-02 07:32:33
/tmp目录将由您以外的其他用户使用,并且您将没有读取这些文件或目录的权限(即使您是唯一使用该计算机的用户,各种root进程仍将使用/tmp目录)。似乎没有不抱怨权限问题的ack选项,所以您只需丢弃这些行。一种简单的方法是将ack打印到stderr的所有内容都抛出,如下所示:
alias ack='ack $* 2> /dev/null'但是,这将丢弃所有 ack错误。要丢弃“权限被拒绝”错误,需要做更多的工作。假设您使用bash作为shell,请将以下代码放入您的~/.bash_aliases文件中:
function ack_discard_perm_errs()
{
\ack --color $* 2>&1 | grep -v "Permission denied"
}
alias ack='ack_discard_perm_errs $*'https://stackoverflow.com/questions/7973805
复制相似问题