Как скопировать папку?

Я хочу, чтобы команда полностью уничтожила содержимое папки / каталога (которая может быть внутри папок / каталогов). Также, пожалуйста, объясните команду.

1
задан 23 August 2012 в 19:28

5 ответов

Для файлов, которые не являются каталогами, вот более простой способ вместо -exec shred -u {} \; типа пути:

cd to your directory.

, затем

find . -type f -print0 | xargs -0 shred -fuzv -n 48

, это 48 рекурсивно проходит к текущий каталог, который вы cd 'в.

Надеюсь, это поможет некоторым.

6
ответ дан 25 May 2018 в 12:38
  • 1
    Добавление '-print0' для поиска и '-0' для xargs? Каталоги могут иметь пробелы в своих именах. – weakish 27 July 2013 в 20:03
  • 2
    Хороший ответ, но почему вы используете xargs ?? Я не понимаю xargs. – Chinmaya B 11 September 2015 в 08:40

Shred работает только с файлами. Сначала необходимо сначала испортить файлы в каталоге dir / subdirs, а затем удалить каталоги. попробуйте

find [PATH_TO_DIR] 

и убедитесь, что вы видите только файлы, которые хотите удалить

find [PATH_TO_DIR] -exec shred -u {} \;

, затем удалите dirs с помощью

rm -rf [PATH_TO_DIR]
1
ответ дан 25 May 2018 в 12:38
  • 1
    может у, пожалуйста, объясните {} \;. также где-то elsi я видел ту же команду, что и ваш, но это было '{}' \;, в чем разница между двумя? – Ashu 16 April 2012 в 19:43
  • 2
    Так как shred не работает в каталогах, как насчет добавления опции -type f в команды find? – andol 16 April 2012 в 20:49
  • 3
    @ andol: Да, я думал об этом. – Ashu 16 April 2012 в 23:35
  • 4
    Не могу объяснить это лучше, чем страница поиска ... {} и \; являются частью опции -exec для поиска. – Ruediger 17 April 2012 в 01:03

Вероятно, вы хотите использовать что-то похожее на это:

find dir -type f -exec shred -fuz {} +
rm -rf dir

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

1
ответ дан 25 May 2018 в 12:38

sudo apt install wipe

$ wipe -rfi dir/*

, где используются флаги: -r – tells wipe to recurse into subdirectories -f – enables forced deletion and disable confirmation query -i – shows progress of deletion process

1
ответ дан 25 May 2018 в 12:38

Когда мне нужно обрезать несколько файлов или весь каталог, я просто использую shred -vzn 20 ./shredme/*.*, например, который перезаписывает все файлы с любым расширением файла в папке «shredme». Затем вы можете использовать стандартную команду rm -rf ./shredme для удаления самой папки (или просто щелкнуть правой кнопкой мыши и удалить папку), поскольку все данные были перезаписаны 20 раз для этого примера.

Я сделал быстрый пример этого с кучей дубликатов изображений в качестве примера.

-1
ответ дан 25 May 2018 в 12:38

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

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