我尝试使用此命令递归搜索文件夹并打印.wav文件,仅显示文件名(不是位置):
find /location/Master_Folder/ -type f -printf "%f\n" -iname *.wav > Wav_files.txt
我也尝试将.wav放在双引号中,如下所示:
find /location/Master_Folder/ -type f -printf "%f\n" -iname "*.wav" > Wav_files.txt
当我检查Wav_files.txt文件时,还列出了.xml文件。我只打算打印.wav文件 - 我做错了什么?
答案 0 :(得分:1)
find /location/Master_Folder/ -type f -iname '*.wav' -printf "%f\n" > Wav_files.txt
将条件(-type
和-iname
)放在操作(-printf
)之前。 find
通常从左到右进行评估,因此-printf
发生在原始命令行中-iname
之前。
另外,我倾向于使用单引号''
围绕find
中的模式,所以如果我搜索包含$
的文件名,我不会感到惊讶(这会导致在""
内扩展。 :)