Удалить файлы и папки с определенным именем из определенного каталога

У меня есть папка /home/userA/folderA, эта папка содержит много файлов, папок и подпапок. Я хочу удалить все файлы с определенными именами data.txt и glass.txt. Я также хочу удалить любую папку с именем match со всем ее содержимым. Буду благодарен за любой совет, как это сделать.

6
задан 28 September 2014 в 20:52

3 ответа

Можно удалить файлы и папки в подкаталогах folderA.

Для удаления файлов работайте:

find /home/userA/folderA/* -type f \( -name "data.txt" -or -name "glass.txt" \) -delete 

и удалить папки match:

find /home/userA/folderA/* -depth -name "match" -type d -exec rm -rf "{}" \; 
0
ответ дан 28 September 2014 в 20:52

И подробное (Python) опция:

#!/usr/bin/env python3

import os
import shutil

# --------------------------------------------------------
reorg_dir = "/path/to/your/folder"
remove_files = ("data.txt", "glass.txt")
remove_dirs = ("match")
# ---------------------------------------------------------

for root, dirs, files in os.walk(reorg_dir):
    for name in files:
        if name in remove_files:
            os.remove(root+"/"+name)
    for dr in dirs:
        if dr in remove_dirs:
            shutil.rmtree(root+"/"+dr)

Копия сценарий в пустой файл, набор каталог и если Вы хотите/нуждаетесь: отредактируйте список файлов и папок, чтобы удалить, сохранить его как reorg.py и выполнить его командой:

python3 /path/to/reorg.py
0
ответ дан 28 September 2014 в 20:52

Можно просто выполнить следующую команду (быть осторожным и проверить все дважды, потому что это не обратимо!) Это удалит любые файлы, которые имеют данные слова или стекло в них, которые являются .txt файлами.

sudo rm -rf /home/userA/folderA/*data*.txt

sudo rm -rf /home/userA/folderA/*glass*.txt

можно найти любую папку названной соответствием при помощи определять местоположение команды:

locate match

, Как только Вы находите пути, просто сделайте команду выше для всей папки

sudo rm -rf /path/to/match

Лучший, Лев

0
ответ дан 28 September 2014 в 20:52

Другие вопросы по тегам:

Похожие вопросы: