rm: kung paano tanggalin ang mga file at folder gamit ang utos ng Terminal na ito

Utos ng Rm

Ang pagtanggal ng isang file sa anumang operating system ay kadalasang kasing dali ng pag-click dito at pagpindot sa delete key o pag-right click at pagpapadala nito sa basurahan. Alam nating lahat kung paano gawin iyon at ito ang pinakamahusay na pagpipilian upang tanggalin ang isang file sa harap namin. Ngunit, ano ang mangyayari kung ang nais natin, halimbawa, ay tanggalin ang maraming mga file na nasa loob ng parehong folder? Ito ay nangyayari na sa Linux mayroon kaming utos ng rm magpapahintulot sa amin na alisin ang halos anumang mula sa terminal.

"Rm" ang pagpapaikli ng «alisin», na kung saan ay «aalisin» sa Ingles. Ginagamit ito upang tanggalin ang mga file at kung ginamit ito nang paulit-ulit papayagan din kaming magtanggal ng mga direktoryo. Bilang default ay hindi nito aalisin ang mga direktoryo at aalisin nito ang anumang mga file na tinukoy sa linya ng utos. Ang proseso ng pag-aalis ay nag-aalis ng isang pangalan ng file sa isang file system mula sa nauugnay na data at minamarkahan ang espasyo ng imbakan na magagamit para sa mga susunod na pagsulat. Dapat kang mag-ingat, dahil sa sandaling magtanggal ka ng isang bagay gamit ang rm hindi na ito mababawi.

Mga magagamit na pagpipilian para sa rm

-f,
-Pagtatanggol
Balewalain ang mga walang mga file at huwag kailanman magtanong bago tanggalin.
-i Magtanong bago tanggalin.
-I Magtanong isang beses bago tanggalin ang higit sa tatlong mga file o kapag tinatanggal nang recursively.
–Interactive[=WHEN] Tanong ayon sa WHEN: hindi kailanman, minsan (-ako), o laging (-i). Oo WHEN hindi tinukoy, laging magtanong.
–Samang-file-system Kapag tinatanggal nang paulit-ulit ang isang hierarchy, hindi nito pinapansin ang anumang direktoryo na nasa ibang direktoryo kaysa sa naaayon sa argumento ng linya ng utos.
–No-mapangalagaan-ugat Hindi nito tinatrato ang direktoryo ng ugat sa anumang espesyal na paraan.
–Preserba-ugat Hindi nito aalisin ang direktoryo ng ugat, na kung saan ay ang default na pag-uugali.
-r,
-R,
–Recursive
Recursively alisin ang mga direktoryo at ang kanilang nilalaman.
-d,
–Dir
Tanggalin ang mga walang laman na direktoryo. Pinapayagan kami ng pagpipiliang ito na alisin ang isang direktoryo nang hindi tumutukoy sa -r / -R / –recursive.
-v,
–Verbose
Verbose mode; Ipaliwanag sa lahat ng oras kung ano ang ginagawa.
-Help Magpakita ng isang mensahe ng tulong.
-Version Ipinapakita ang impormasyon ng bersyon.

Mga praktikal na halimbawa

rm ay hindi nagtatanggal ng mga direktoryo bilang default. Para sa mga ito dapat naming gamitin ang mga pagpipilian na -r / -R / –recursive. Kung ang isang direktoryo ay walang laman, gamitin ang n -d / –dir na pagpipilian. Kung nais naming alisin ang isang file na nagsisimula sa isang dash (-), kailangan naming magdagdag ng isang hiwalay na dobleng dash (-) bago ang pangalan ng file. Kung ang pangalawang dash ay hindi naidagdag, rm maaaring maling bigyang-kahulugan ang filename bilang isang pagpipilian. Ito ay nagkakahalaga ng pag-alala na ang asterisk (*) ay nangangahulugang "lahat ng bagay na tumutugma", pagdaragdag ng "*." at sa likod lamang ng asterisk.

Halimbawa, upang tanggalin ang file na «-test.txt» kakailanganin naming gamitin ang utos

rm -- -prueba.txt

Ang nasa itaas ay magiging sa kaso kung saan ito ay nasa aming personal na folder. Kung hindi, kakailanganin nating idagdag ang buong landas, na magiging katulad ng:

rm /home/pablinux/Documentos/-file

Ang pagkakaiba sa pagitan ng dalawang mga pagpipilian ay sa pangalawang kaso mayroon itong slash (/) sa harap nito, na ginagawang hindi nalilito ang pagpipilian.

Ang iba pang mga halimbawa ay:

  • rm -f test-txt: tatanggalin ang file na "test.txt" nang hindi nagtatanong kahit na protektado ito.
  • rm *: tatanggalin nito ang lahat ng mga file sa direktoryo kung saan tayo mula sa terminal. Kung mayroon itong proteksyon sa pagsulat, hihilingin ito sa amin bago tanggalin ito.
  • rm -f *: aalisin ang lahat sa direktoryo nang hindi nagtatanong.
  • rm -i *- Susubukan na tanggalin ang lahat ng mga file sa isang direktoryo, ngunit hilingin sa bawat oras na tanggalin ang isa.
  • rm -I *: tulad ng nasa itaas, ngunit hihilingin lamang para sa kumpirmasyon kung mayroong higit sa tatlong mga file.
  • direktoryo ng rm -r, kung saan ang "direktoryo" ay isang tukoy: aalisin nito ang direktoryo na "direktoryo" at anumang mga file at subdirectory na naglalaman nito. Kung ang anumang mga file o subdirectory ay protektado ng sulat, hihilingin ito.
  • direktoryo ng rm -rf: katulad ng sa itaas, ngunit hindi hihilingin.

Ang utos na hindi mo dapat gamitin: rm -rf /

At nagtapos kami sa isang utos na maaari naming makita sa mga social network na higit pa bilang isang biro kaysa sa anupaman. Ang utos sa itaas nangangahulugang 1- tanggalin, 2- recursively hangga't maaari at 3 nagsisimula sa ugat. Dahil sa kung paano pinamamahalaan ng Linux ang mga drive, tatanggalin din nito ang nilalaman ng anumang hard drive na nakakonekta namin sa aming computer. Kung gagamitin mo ito, huwag sabihin na hindi kami nagbalaan.


Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: AB Internet Networks 2008 SL
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.

  1.   Cristian dijo

    Kagiliw-giliw na tungkol sa paglilinaw hinggil sa huling utos, alam ko na maaari kong tanggalin ang lahat ng nilalaman ng disk kung saan naroon ang system, ngunit hindi ko alam na tinanggal din nito ang nilalaman ng anumang iba pang disk na nakakonekta namin!

  2.   Juan dijo

    Maraming salamat, napaka-kapaki-pakinabang ng iyong post, malulutas ko ang aking problema, ngunit kung wala ito ay hindi ako magtatagumpay.