The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"скрипт удаления файлов 'не в списке'"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Программирование под UNIX (Shell скрипты)
Изначальное сообщение [ Отслеживать ]

"скрипт удаления файлов 'не в списке'"  +/
Сообщение от Сергей22 (ok) on 17-Июн-11, 23:42 
Здравствуйте

Есть директория, в которой ~250000 картинок и список картинок из ~35000 шт.

Надо удалить все, которые не в списке. Посоветуйте чайнику скрипт... В таком программировании, к сожалению, не силен...

Спасибо!

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "скрипт удаления файлов 'не в списке'"  +/
Сообщение от Аноним (??) on 18-Июн-11, 00:08 
> Есть директория, в которой ~250000 картинок и список картинок из ~35000 шт.

может типа такого:

# folder_list - список файлов из каталога
# folder_list = os.listdir('./')
# pic_list - список картинок которые нужно сохранить
# получаем чтением построчно соответствующего файла

#!/usr/bin/env python

...

for i in folder_list:
    if i not in pic_list:
        # удаляем

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "скрипт удаления файлов 'не в списке'"  +/
Сообщение от Сергей22 email(ok) on 22-Июн-11, 01:30 
>[оверквотинг удален]
> может типа такого:
> # folder_list - список файлов из каталога
> # folder_list = os.listdir('./')
> # pic_list - список картинок которые нужно сохранить
> # получаем чтением построчно соответствующего файла
> #!/usr/bin/env python
> ...
> for i in folder_list:
>     if i not in pic_list:
>         # удаляем

спасибо, но пока попробую нидеследующий подход

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

2. "скрипт удаления файлов 'не в списке'"  +1 +/
Сообщение от ACCA (ok) on 18-Июн-11, 01:27 
cd /dir/to/delete
(ls ; cat /path/to/your/filelist) | sort | uniq -u | xargs rm -f

На кой тебе столько порнухи?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "скрипт удаления файлов 'не в списке'"  +/
Сообщение от Сергей22 email(ok) on 22-Июн-11, 01:29 
> cd /dir/to/delete
> (ls ; cat /path/to/your/filelist) | sort | uniq -u | xargs rm
> -f
> На кой тебе столько порнухи?

Привет

Спасибо за команды, но не совсем работает - удаляется все файлы, кроме последнего в списке.

Это не порнуха - кто ж сейчас картинки-то смотрит? У меня все в HD :)

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

6. "скрипт удаления файлов 'не в списке'"  +/
Сообщение от Andrey Mitrofanov on 22-Июн-11, 09:50 
> Спасибо за команды, но не совсем работает - удаляется все файлы, кроме
> последнего в списке.

Странно... Может перевода строки где не хватает? Попробуй после cat добавить просто echo

"; cat /file ) |"  -->  "; cat /file; echo ) |"

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

7. "скрипт удаления файлов 'не в списке'"  +/
Сообщение от Сергей22 email(ok) on 22-Июн-11, 11:02 
> Странно... Может перевода строки где не хватает? Попробуй после cat добавить просто
> echo
> "; cat /file ) |"  -->  "; cat /file; echo
> ) |"

не влияет

строго оставляет последний файл из списка, но перед удалением выводит правильные файлы для удаления

спасибо

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "(решено) скрипт удаления файлов 'не в списке'"  +/
Сообщение от Сергей22 email(ok) on 23-Июн-11, 10:38 
Задача решена так:

#!/bin/bash
for f in $(find f *.*); do
    if grep -q "$f" 1.txt; then
        echo $f;
            else
                rm -f "$f"
        
    fi
done

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

5. "скрипт удаления файлов 'не в списке'"  +/
Сообщение от Сергей22 email(ok) on 22-Июн-11, 01:49 
> cd /dir/to/delete
> (ls ; cat /path/to/your/filelist) | sort | uniq -u | xargs rm
> -f
> На кой тебе столько порнухи?

причем если  xargs с параметром -p, то выводит правильный список файлов на удаление, а после "y" удаляет все

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру