Удалить все файлы и папки на внешнем диске

У меня есть тысячи точечных файлов, папок и подпапок на внешнем жестком диске. Я хочу восстановить все изображения в этих папках. Я хочу отменить их все, чтобы легко перемещаться по этим фотографиям.

Я пытался переименовать папки, но это не представляется возможным.

2
задан 24 May 2016 в 18:00

1 ответ

Столкновения имени

Первый вопрос, который необходимо задать сами, состоит в том, если существует шанс столкновений имени. Другими словами; если там возможно существуют и скрытая версия и нескрытая версия того же каталога или файла в одном и том же каталоге.

От нижней части до вершины

Принимая дело не в этом, это - одна из ситуаций, которые необходимо переименовать от нижней части до вершины, так как Вы не можете переименовать (перемещают) файлы в папках, которые были просто переименованы; сценарий не будет больше находить их и повреждение.

Создание видимых скрытых файлов

Кроме того, при записи этого ответа, комментарий @Rinzwind просто открылся выше моей головы, упомянув, что нажатие Ctrl+H сделает все скрытые файлы и папки видимыми, который верен, конечно.

Если, тем не менее, требуется переименовать файлы и папки:

Сценарий, чтобы сделать так

#!/usr/bin/env python3
import os
import sys
import shutil

directory = sys.argv[1]

for root, dirs, files in os.walk(directory, topdown=False):
    for f in files:
        if f.startswith("."):
            shutil.move(os.path.join(root, f), os.path.join(root, f[1:]))
    for dr in dirs:
        if dr.startswith("."):
            shutil.move(os.path.join(root, dr), os.path.join(root, dr[1:]))

Как использовать

  1. Скопируйте сценарий в пустой файл, сохраните его как rename_dotted.py
  2. Откройте терминал и введите команду:

    python3 /path/to/rename_dotted.py '<directory>'
    

    где '<directory>' каталог, должен быть в кавычках, если он включает одни или несколько пробелов.

    Как всегда, сначала примерьте образец.

2
ответ дан 25 May 2016 в 04:00

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

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