目录结构:
一.pdf
./subdir/two.pdf
./anothersubdir/三.pdf
当我输入:
find ./ -type f -name "*.pdf"
它检索所有 pdf,包括子目录。
bash 函数
function getext {find ./ -type f -name "$1"}
在 bashrc 中使用此函数,输入:
getext *.pdf
它只检索“one.pdf”,但不检索其余部分。
问题:这个函数会发生什么?与仅获取第一个文件并停止的标准输入相比,它缺少什么?
感谢您的帮助。
答案1
"*.pdf"
出于与您在论点中引用的相同原因find
里面你的函数,当你称呼功能:
getext "*.pdf"
否则,shell 将尝试匹配*.pdf
当前目录中的文件名,从而将其扩展 - 在本例中为one.pdf
-前被传递给你的函数。