4

感谢@ezod here,我有一个很好的 bash 命令来查找文件和文件路径中的关键短语。我试图将它变成我的 bashrc 中的一个函数,但它不会产生相同的结果。我猜它与我需要转义或使用替代方法的背靠背大括号有关?

作品:

{ find . -name '*keyword*'; grep -irl 'keyword' .; } | sort -u

在 bashrc 中不起作用:

function findit() {
  { find . -name '*$1*';
    grep -irl '$1' .;
  } | sort -u
}
export -f findit

$ findit keyword
4

1 回答 1

5

Bash 不会用单引号替换变量。尝试这个:

function findit() {  
  { find . -name "*$1*";  
    grep -irl "$1" .;  
  } | sort -u  
}  
export -f findit  
于 2012-10-12T20:00:25.473 回答