我有一个甜蜜的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
答案 0 :(得分:4)
Bash不会用单引号替换变量。试试这个:
function findit() {
{ find . -name "*$1*";
grep -irl "$1" .;
} | sort -u
}
export -f findit