linux-将我的bash命令转换为bashrc函数并传递参数
收藏

提问

我有一个不错的bash命令,可以在文件和文件路径中找到关键短语thanks to @ezod here.我试图将其转换为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

最佳答案

Bash不会用单引号代替变量.尝试这个:

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

    公众号
    关注公众号订阅更多技术干货!