rm
видалення файлів і каталогів
Загальний синтаксис
rm [OPTIONS]... FILE...
За замовчуванням, коли виконується без будь-яких параметрів, rm не видаляє каталоги та не запитує користувача, чи продовжувати видалення даних файлів.
видалити один файл:
rm filename
Якщо файл не захищений від запису, його буде видалено без попередження. У разі успіху команда не видає жодного результату і повертає нуль.
Якщо у вас немає дозволів на запис у батьківському каталозі, ви отримаєте помилку «Операція не дозволена».
Під час видалення файлів, захищених від запису, команда запропонує вам підтвердження, як показано нижче:
rm filename
rm: remove write-protected regular empty file 'filename'?
Введіть Y і натисніть Enter, щоб видалити файл.
Опція -f
вказує rm ніколи не запитувати користувача та ігнорувати неіснуючі файли та аргументи.
rm -f filename
Якщо ви хочете отримати інформацію про те, що видаляється, скористайтеся параметром -v (verbose - багатослівний):
rm -v filename
removed 'filename'
Видалити кілька файлів одночасно. Для цього передайте імена файлів як аргументи, розділені пробілом:
rm file1 file2 file3
Можна використовувати регулярні вирази для відповідності кільком файлам. Наприклад, щоб видалити всі .png файли в поточному каталозі:
rm *.png
Перед використанням команди rm з регулярним виразом бажано перевірити його роботу з командою ls, щоби бачити, які файли будуть видалені.
Видалити один або кілька порожніх каталогів, скористайтеся опцією -d
:
rm -d dirname
rm -d
функціонально ідентичний команді rmdir
.
Рекурсивно видалити непусті каталоги та всі файли в них, використовуйте параметр -r
(recursive - рекурсивний):
rm -r dirname
Підказка перед видаленням
Параметр -i
вказує rm запитувати користувача перед видаленням кожного файлу. Введіть Y, Enter щоб видалити файл.
rm -i file1 file2
rm: remove regular empty file 'file1'? y rm: remove regular empty file 'file2'?
При видаленні більше трьох файлів або рекурсивному видаленні каталогу, щоб отримати єдиний запит для всієї операції, скористайтеся параметром -I
. Вам буде запропоновано підтвердити видалення всіх даних файлів і каталогів:
rm -I file1 file2 file3 file4
rm: remove 4 arguments?
Якщо даний каталог або файл у каталозі захищені від запису, команда rm запропонує вам підтвердити операцію. Щоб видалити каталог без запиту, скористайтеся опцією -f
:
rm -rf dirname
Команда rm -rf
дуже небезпечна, і її слід використовувати з особливою обережністю!
rmdir –help
rm --help
Usage: rm [OPTION]... [FILE]... Remove (unlink) the FILE(s). -f, --force ignore nonexistent files and arguments, never prompt -i prompt before every removal -I prompt once before removing more than three files, or when removing recursively; less intrusive than -i, while still giving protection against most mistakes --interactive[=WHEN] prompt according to WHEN: never, once (-I), or always (-i); without WHEN, prompt always --one-file-system when removing a hierarchy recursively, skip any directory that is on a file system different from that of the corresponding command line argument --no-preserve-root do not treat '/' specially --preserve-root do not remove '/' (default) -r, -R, --recursive remove directories and their contents recursively -d, --dir remove empty directories -v, --verbose explain what is being done --help display this help and exit --version output version information and exit By default, rm does not remove directories. Use the --recursive (-r or -R) option to remove each listed directory, too, along with all of its contents. To remove a file whose name starts with a '-', for example '-foo', use one of these commands: rm -- -foo rm ./-foo Note that if you use rm to remove a file, it might be possible to recover some of its contents, given sufficient expertise and/or time. For greater assurance that the contents are truly unrecoverable, consider using shred. GNU coreutils online help: <http://www.gnu.org/software/coreutils/> Full documentation at: <http://www.gnu.org/software/coreutils/rm> or available locally via: info '(coreutils) rm invocation'