Како избрисати датотеке и директоријуме у Линук терминалу

Команде рм и рмдир бришу датотеке и директоријуме на Линук-у, мацОС-у и другим оперативним системима сличним Уник-у. Сличне су командама дел и делтрее у Виндовс-у и ДОС-у. Ове команде су веома моћне и имају доста опција.

Важно је напоменути да се датотеке и директоријуми избрисани помоћу рм и рмдир не премештају у смеће. Они се одмах уклањају са вашег рачунара. Ако случајно избришете датотеке помоћу ових команди, једини начин на који ћете моћи да их вратите је из резервне копије.

Како уклонити датотеке помоћу рм

Најједноставнији случај је брисање једне датотеке у тренутном директоријуму. Унесите команду рм, размак, а затим име датотеке коју желите да избришете.

rm file_1.txt

Ако датотека није у тренутном радном директоријуму, наведите путању до локације датотеке.

rm ./path/to/the/file/file_1.txt

Можете проследити више од једног имена датотеке рм-у. На тај начин бришете све наведене датотеке.

rm file_2.txt file_3.txt

Замолници се могу користити за одабир група датотека које треба избрисати. * представља више знакова, а ? представља један лик. Ова команда би избрисала све пнг датотеке слика у тренутном радном директоријуму.

rm *.png

Ова команда би избрисала све датотеке које имају једну екстензију карактера. На пример, ово би избрисало Филе.1 и Филе.2, али не и Филе.12.

rm *.?

Ако је датотека заштићена од писања, бићете упитани пре него што се датотека обрише. Морате одговорити са и или н и притиснути „Ентер“.

Да бисте смањили ризик од коришћења рм-а са џокер знаковима, користите опцију -и (интерактивна). Ово захтева од вас да потврдите брисање сваке датотеке.

rm -i *.dat

Опција -ф (форце) је супротна од интерактивне. Не тражи потврду чак и ако су датотеке заштићене од писања.

rm -f filename

Како уклонити директоријуме са рм

Да бисте уклонили празан директоријум, користите опцију -д (директоријум). Можете да користите џокер знакове (* и ?) у именима директоријума баш као и са именима датотека.

rm -d directory

Навођење више од једног имена директоријума брише све наведене празне директоријуме.

rm -d directory1 directory2 /path/to/directory3

Да бисте избрисали директоријуме који нису празни, користите опцију -р (рекурзивна). Да буде јасно, ово уклања директоријуме и све датотеке и поддиректоријуме који се налазе у њима.

rm -r directory1 directory2 directory3

Ако је директоријум или датотека заштићена од писања, од вас ће бити затражено да потврдите брисање. Да бисте избрисали директоријуме који нису празни и да бисте потиснули ове упите, користите опције -р (рекурзивно) и -ф (присилно).

rm -rf directory

Овде је потребна пажња. Ако направите грешку са командом рм -рф, може доћи до губитка података или квара система. Опасно је, а опрез је најбоља политика. Да бисте разумели структуру директоријума и датотеке које ће бити обрисане командом рм -рф, користите команду стабло.

  Како инсталирати ЛосслессЦут на Линук

Користите апт-гет да инсталирате овај пакет на ваш систем ако користите Убунту или другу дистрибуцију засновану на Дебиан-у. У другим дистрибуцијама Линука, користите алатку за управљање пакетима ваше Линук дистрибуције.

sudo apt-get install tree

Покретање команде стабла производи једноставан за разумевање дијаграм структуре директоријума и датотека испод директоријума из којег се покреће.

tree

Такође можете да наведете путању до команде стабла како бисте је изазвали да покрене стабло из другог директоријума у ​​систему датотека.

tree path/to/directory

Команда рм такође има опције –оне-филе-систем, –но-пресерве-роот, –пресерве-роот, али оне се препоручују само за напредне кориснике. Ако нешто погрешите, могли бисте случајно да избришете све системске датотеке. Консултујте команду страница приручника за више информација.

Како уклонити директоријуме помоћу рмдир-а

Постоји још једна команда, која се зове рмдир, коју можете користити за брисање директоријума. Разлика између рм-а и рмдир-а је у томе што рмдир може да брише само празне директоријуме. Никада неће избрисати датотеке.

Најједноставнији случај је брисање једног празног директоријума. Као и код рм-а, можете проследити више имена директоријума у ​​рмдир или путању до директоријума.

Избришите један директоријум у тренутном директоријуму тако што ћете проследити његово име у рмдир:

rmdir directory

Избришите више директоријума тако што ћете проследити листу имена у рмдир:

rmdir directory1 directory2 directory3

Избришите директоријум који није у тренутном директоријуму тако што ћете навести пуну путању до тог директоријума:

rmdir /path/to/directory

Ако покушате да избришете фасциклу која није празна, рмдир ће вам дати поруку о грешци. У следећем примеру рмдир успешно и тихо брише директоријум клијената, али одбија да избрише директоријум пројеката јер садржи датотеке. Директоријум пројеката је остављен тачно онакав какав је био и датотеке у њему су нетакнуте.

  Шта је ТТИ на Линук-у? (и како користити команду тти)

Када рмдир да грешку „Директоријум није празан“, он престаје да обрађује директоријуме који су му прослеђени на командној линији. Ако сте од њега тражили да избрише четири директоријума и да је први имао датотеке у њему, рмдир би вам дао поруку о грешци и ништа више не би урадио. Можете га натерати да игнорише ове грешке помоћу опције –игноре-фаил-он-нон-емпти тако да се други директоријуми обрађују.

У следећем примеру две фасцикле су прослеђене у рмдир, то су рад/извештаји и рад/цитати. Опција –игноре-фаил-он-нон-емпти је укључена у команду. Фасцикла рад/извештаји има датотеке у себи, тако да рмдир не може да је избрише. Опција –игноре-фаил-он-нон-емпти приморава рмдир да игнорише грешку и пређе на следећу фасциклу коју треба да обради, а то је рад/наводници. Ово је празан фолдер, а рмдир га брише.

Ово је била команда која је коришћена.

rmdir --ignore-fail-on-non-empty work/reports /work/quotes

Можете користити опцију -п (родитељи) да избришете директоријум и да избришете његове родитељске директоријуме. Овај трик функционише јер рмдир почиње са циљним директоријумом, а затим се враћа назад до надређеног. Тај директоријум би сада требало да буде празан, тако да га рмдир може избрисати, а процес се понавља враћајући се на путању која је дата рмдир-у.

У следећем примеру команда која се прослеђује у рмдир је:

rmdir -p work/invoices

И фактуре и радни именици се бришу на захтев.

Без обзира да ли користите Басх или било коју другу љуску, Линук вам пружа флексибилне и моћне команде за брисање директоријума и датотека директно са командне линије терминала. Неки људи више воле да имају ток посла који се врти око терминала. Други можда немају избора по том питању. Можда раде на серверима без инсталираног ГУИ-а или на удаљеној сесији на систему без главе као што је Распберри Пи. Ове команде су савршене за ту групу људи.

  Како инсталирати Маилспринг на Линук

Али који год тип тока посла желите, ове команде се веома добро могу укључити у схелл скрипте. Ако је скрипта покренута црон послом, она може помоћи у аутоматизацији рутинских задатака одржавања, као што је чишћење нежељених датотека евиденције. Ако истражите тај случај употребе, запамтите снагу ових команди, пажљиво тестирајте све и увек одржавајте недавну резервну копију.