簡體   English   中英

從目錄和子目錄中刪除所有具有某些擴展名的文件

[英]remove all files with some extension from directories and subdirectories

為什么命令:

rm **/*.pyc

什么都不刪除?

實現預期行為的正確方法是什么?

要使您的命令工作,您需要先啟用globstar

shopt -s globstar

啟用 globstar 模式時, **/*.pyc將擴展以匹配當前目錄和所有子目錄中以.pyc結尾的文件。

或者,您可以只使用find

find -name "*.pyc" -delete

這將搜索當前目錄和所有子目錄中以.pyc結尾的任何內容,刪除它找到的任何內容。 要將其限制為僅匹配文件,您也可以添加-type f開關,盡管這可能不是問題(並且在您的原始命令中不會出現這種情況)。

或者,如果您的 find 版本不理解-delete

find -type f -name "*.pyc" -exec rm {} \;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM