简体   繁体   中英

How to delete files under subdirectories but not deleting subdirectories themselves in linux

I have the following directory structure:

/archive/file1.csv
/archive/file2.csv
/archive/myfile/my.txt
/archive/yourfile/your.txt

I want to delete all files under /archive but not its subfolders, so after deletion, the directory structure should look like:

/archive/
/archive/myfile/
/archive/yourfile/

I have tried the following two commands, but the files under the subfolders are not deleted (ie. my.txt and your.txt), anyone know why ?

find -L /archive ! -type d  -exec rm -rfv {} +
find -L /archive -type f  -exec rm -rfv {} +

use find

$ find . ! -type d -delete

make sure you're in the right path.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM