Globs membantu anda: cara menghapus semua fail kecuali satu

Nautilus di Ubuntu

The glob dan paip Unix sangat bermanfaat dalam banyak keadaan ketika kita bekerja dari konsol. Anda semua telah menggunakan paip atau menggunakan watak terkenal seperti wildcard * untuk menggantikan nama, dll. Baiklah, tentunya mereka juga menghadapi masalah ingin menghapus semua fail dalam direktori kecuali satu atau lebih daripadanya. Sekiranya ada beberapa yang tidak menjadi masalah, ia dapat dilakukan dengan mudah walaupun dari mod grafik.

Tetapi jika ada banyak dan kita bekerja dari konsol perkara menjadi sedikit lebih rumit. Tetapi itu hanya kerana kita tidak mempunyai sumber daya, kerana ada pilihan mudah yang dapat kita manfaatkan untuk membantu kita mengubah tugas yang rumit menjadi sesuatu yang sangat sederhana. Baiklah, dalam tutorial ringkas ini kita menerangkan bagaimana melakukannya hanya dengan menggunakan simbol sederhana ... Mudah, bukan? Baiklah, mari kita berlatih:

Pertama sekali, saya akan membayangkan bahawa kita ada direktori dipanggil Foto di mana kita mahu memadamkan semua fail gambar .jpeg yang ada di dalamnya. Cuba kita bayangkan terdapat 100 gambar. Dan kami mahu memadamkan semuanya kecuali salah satu daripadanya yang disebut nat7.jpg. Langkah pertama adalah pergi ke direktori itu dengan bantuan arahan cd. Sebagai contoh:

cd /home/Fotos

Kemudian kita akan menggunakan perintah rm seperti yang sering kita lakukan ketika kita mahu padam sesuatu, tetapi kami akan menunjukkan bahawa kami mahu menghapus semua kecuali gambar yang ingin kami simpan, untuk ini kami akan menggunakan watak! seperti itu:

rm -f !(nat7.jpg)

Dengan itu kita menolak penghapusan menjadi rm sehingga menghapus semua kecuali fail bernama nat7.jpg. Sekiranya anda pergi ke direktori dan lakukan penyenaraian kandungannya, anda dapat mengesahkan bahawa semua perkara kecuali gambar yang dikehendaki telah dipadamkan:

ls /home/Fotos

Sekarang anda boleh bermain dengan dunia ini untuk melakukan perkara lain, seperti menghapus semua fail dalam direktori kecuali fail MP3 dengan! (*. mp3) atau juga menyimpan pelbagai fail atau format dari penghapusan, seperti! (nat7.jpg | isa5.jpg) atau dengan! (* .txt | * .mp3). Kemungkinannya banyak ... Ini adalah Unix, ini adalah Linux!


4 komen, tinggalkan komen anda

Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab untuk data: AB Internet Networks 2008 SL
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.

  1.   Ros Gregory kata

    Tidak ada hari yang kita tidak belajar sesuatu! Walaupun saya telah bermain-main dengan PC selama kira-kira 30 tahun dan hampir 20 dengan Linux, saya tidak begitu diberi konsol, saya mengakui bahawa ia sangat berguna, tetapi saya selalu malas ketika hendak menghafal perintah dan meraikan langkah ke mod grafik. Saya sama sekali tidak mengetahui pilihan dunia ini dan walaupun tidak sukar bagi saya untuk bertahan tanpanya, ia harus diakui bahawa ia kelihatan sangat berguna dan praktikal, selain itu, mudah difahami dan diaplikasikan. Saya ambil perhatian.
    Terima kasih atas sumbangan yang tidak diragukan lagi akan sangat berguna.

  2.   9acca9 kata

    Hei.
    Terima kasih banyak tetapi ...
    rm -f! (*. exe)
    bash:!: acara tidak dijumpai

    1.    Isaac PE kata

      Hello,

      Cuba aktifkan ini:

      shopt -s extglob; set -H

      Kemudian cuba lagi:

      rm -f! (*. exe)

      Semua yang terbaik! Saya harap ia berfungsi untuk anda. Dan terima kasih kerana mengikuti kami ...

  3.   miguel kata

    Helo, saya mempunyai soalan, saya tidak dapat menyimpan dua fail pada masa yang sama kerana semasa saya mencuba, semuanya akan dihapus, tetapi apabila saya melakukannya dengan hanya satu, saya dapat. apa itu? Bagaimana menyelesaikannya?