Bash
Bash 函式不能遞歸工作
目錄結構:
one.pdf
./subdir/two.pdf
./anothersubdir/three.pdf
當我輸入:
find ./ -type f -name "*.pdf"
它檢索所有 pdf,包括子目錄。
重擊函式
function getext {find ./ -type f -name "$1"}
在 bashrc 中使用這個函式,輸入:
getext *.pdf
它只檢索“one.pdf”,但不檢索其餘部分。
問題:函式在這裡發生了什麼?與僅獲取第一個文件並停止的標準輸入相比,它缺少什麼?
感謝您的幫助。
出於在函式內部
"*.pdf"
引用參數的相同原因,您需要在呼叫函式時引用它:find
getext "*.pdf"
否則,shell 將嘗試匹配
one.pdf
將其擴展-在本例中為擴展。