Tinutulungan ka ng Globs: kung paano tanggalin ang lahat ng mga file maliban sa isa

Nautilus sa Ubuntu

Los mga globo at tubo ng Unix ay kapaki-pakinabang sa maraming mga kaso kapag nagtatrabaho kami mula sa console. Nagamit mo na ang lahat ng mga tubo o ginamit ang mga sikat na character tulad ng wildcard * upang mapalitan ang mga pangalan, atbp. Sa gayon, tiyak na nakatagpo din sila ng problema sa kagustuhang tanggalin ang lahat ng mga file sa isang direktoryo maliban sa isa o higit pa sa kanila. Kung may kaunti ay hindi isang problema, madali itong magawa kahit mula sa graphics mode.

Ngunit kung maraming at tayo nagtatrabaho mula sa console medyo naging mas kumplikado ang mga bagay. Ngunit dahil lamang iyon sa wala kaming mga mapagkukunan, dahil may mga simpleng pagpipilian na maaari naming samantalahin upang matulungan kaming ibahin ang mga kumplikadong gawain sa isang napaka-simple. Sa gayon, sa simpleng tutorial na ito ipinapaliwanag namin kung paano gawin iyon gamit lamang ang isang simpleng simbolo ... Madali, tama? Kaya, magsanay tayo:

Una sa lahat, maiisip ko na mayroon tayo isang direktoryo tinawag na Mga Larawan kung saan nais naming tanggalin ang lahat ng mga .jpeg na file ng imahe na nasa loob. Isipin natin na mayroong 100 mga larawan. At nais naming tanggalin ang lahat maliban sa isa sa kanila na tinatawag na nat7.jpg. Ang unang hakbang ay upang pumunta sa direktoryong iyon sa tulong ng utos ng cd. Halimbawa:

cd /home/Fotos

Pagkatapos ay gagamitin namin ang utos na rm tulad ng madalas naming ginagawa kapag nais namin burahin isang bagay, ngunit ipahiwatig namin na nais naming burahin ang lahat maliban sa larawang iyon na nais naming panatilihin, para dito gagamitin namin ang character! tulad na:

rm -f !(nat7.jpg)

Sa pamamagitan nito tinatanggihan namin ang pagtanggal sa rm sa gayon tinanggal nito ang lahat maliban sa file na pinangalanang nat7.jpg. Kung pupunta ka sa direktoryo at gawin isang listahan ng nilalaman, magagawa mong i-verify na ang lahat maliban sa nais na larawan ay tinanggal:

ls /home/Fotos

Ngayon ay maaari mong i-play sa glob na ito upang gumawa ng iba pang mga bagay, tulad ng pagtanggal ng lahat ng mga file sa isang direktoryo maliban sa mga MP3 file na may! (*. mp3) o pag-save din ng iba't ibang mga file o format mula sa pagtanggal, tulad ng! (nat7.jpg | isa5.jpg) o may! (* . txt | * .mp3). Ang mga posibilidad ay marami ... Ito ang Unix, ito ang Linux!


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.   Gregorio ros dijo

    Walang araw na hindi namin natutunan ang isang bagay! Sa kabila ng katotohanang nakikipag-usap ako sa mga PC nang halos 30 taon at halos 20 sa Linux, hindi ako gaanong naibigay sa console, inaamin kong napakalaking kapaki-pakinabang nito, ngunit palagi akong tinatamad pagdating sa pagmemorya ng mga utos at ipagdiwang ang paglipat sa graphic mode. Hindi ko alam ang opsyong ito ng mga globo at kahit na hindi mahirap para sa akin na mabuhay nang wala ito, dapat itong ipagkaloob na mukhang napaka kapaki-pakinabang at praktikal, bilang karagdagan, madaling maunawaan at mailapat. Nakakakuha ako ng magandang tala.
    Salamat sa iyo para sa isang kontribusyon na hindi ako nag-aalinlangan na magiging kapaki-pakinabang.

  2.   9acca9 dijo

    Hello.
    Maraming salamat ngunit ...
    rm -f! (*. exe)
    bash:!: hindi nahanap ang kaganapan

    1.    Isaac PE dijo

      Hello,

      Subukang buhayin ito:

      shopt -s extglob; itakda -H

      At pagkatapos ay subukang muli:

      rm -f! (*. exe)

      Ang lahat ng mga pinakamahusay na! Sana gumana ito para sa iyo. At salamat sa pagsunod sa amin ...

  3.   Miguel dijo

    Kumusta, mayroon akong isang katanungan, hindi ako nakapag-save ng dalawang mga file nang sabay-sabay dahil kapag sinubukan ko, ang lahat ay natanggal, ngunit kapag ginawa ko ito sa isa lamang, makakaya ko. kung ano ang maaaring ito ay? Paano ito malulutas?