Перайсці да зместу

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.

Зноскі