rm
rm (ад англ.: remove) — утыліта ў UNIX і UNIX-падобных сістэмах, якая ужываецца для выдалення файлаў з файлавай сістэмы. Ключы, якія ўжываюцца з rm:
-r— апрацоўваць усе ўкладзеныя падкаталогі. Дадзены ключ неабходны, калі файл, які трэба выдаліць, з'яўляецца каталогам, хай нават пустым. Калі файл для выдалення не з'яўляцца каталогам, то ключ-rне ўплывае на каманду rm.-i— выводзіць запыт на пацвярджэнне кожнай аперацыі выдалення.-f— не вяртаць код памылковага завяршэння, калі памылкі былі выкліканы файламі, якіх не існуе; не запытваць пацвярджэнне аперацый.
rm часта з'яўляецца сінонімам каманды rm -i, гэта значыць, што прадвызначана каманда запытвае пацвярджэнне перад выдаленнем файлаў, што дазваляе прадухіліць іх выпадковае выдаленне. Калі карыстальніку патрэбна выдаліць вялікую колькасць файлаў без пацвярджэння аперацыі, можна адмяніць дзеянне ключа -i даданнем ключа -f.
Ахова ад выдалення /
[правіць | правіць зыходнік]Кампанія Sun рэалізавала ахову ад "rm -rf /" у Solaris 10, выпушчаным у 2005 годзе [1]. Пры выкананні каманды сістэма паведамляе, што выдаленне / не дазволена. Неўзабаве пасля гэтага такая ж функцыянальнасць была рэалізавана ў камандзе rm, якая пастаўляецца з FreeBSD. GNU rm не выконвае каманду "rm -rf /", калі не ўказаны параметр --no-preserve-root[2]. Такія паводзіны былі рэалізаваны ў GNU Core Utilities версіі 6.4, выпушчаных у 2006.
Прыклад ужывання
[правіць | правіць зыходнік]rm -rf mydir — рэкурсіўна выдаліць без пацвярджэння і кода памылковага завяршэння файл (ці каталог) mydir.
Часам, у розных канферэнцыях больш дасведчаныя карыстальнікі, пры просьбе даць параду менш дасведчанаму, прапануюць увесці ў кансоль каманду sudo rm -rf /, якая ў сваю чаргу выдаляе ўвесь змест каранёвага каталога. З гэтай нагоды існуе жарт, г.з. "патч Барміна", які тлумачыць што дадзеная каманда з'яўляецца ўніверсальным спосабам адрамантаваць любыя праблемы ў SCO Unix.