GNU/Linux >> Belajar Linux >  >> Ubuntu

Bagaimana Saya Harus Glob Untuk Semua File Tersembunyi?

Saya ingin melakukan beberapa tindakan (misalnya chown ) pada semua file tersembunyi dalam direktori.

Saya tahu bahwa .* adalah tidak ide yang bagus karena ia juga akan menemukan . dan induk .. direktori (saya tahu bahwa rm akan gagal beroperasi pada . dan .. tetapi perintah lain, termasuk chown dan chmod , dengan senang hati akan berlaku)

Tapi semua file tersembunyi saya memiliki nama yang berbeda!

Bagaimana saya harus glob untuk semua file tersembunyi sambil mengecualikan . dan .. ?

Jawaban yang Diterima:

Anda dapat menggunakan extglob berikut ini pola:

[email protected](!(.|))
  • . cocok dengan . awalnya

  • @() adalah extglob pola, akan cocok dengan salah satu pola di dalamnya, karena kita hanya memiliki satu pola di dalamnya, itu akan memilih itu

  • !(.|) adalah extglob another yang lain pattern (bersarang), yang cocok dengan file apa pun tanpa atau satu .; Karena kami telah mencocokkan . pada awalnya, seluruh pola ini akan cocok dengan semua file yang dimulai dengan . kecuali . dan .. .

extglob diaktifkan pada sesi interaktif bash secara default di Ubuntu. Jika belum, aktifkan terlebih dahulu:

shopt -s extglob

Contoh:

$ echo [email protected](!(.|))
.bar .foo .spam

Ubuntu
  1. Linux – Bagaimana Cara Mengatur Izin File Default Untuk Semua Folder / File Di Direktori?

  2. Bagaimana Memindahkan Semua File (termasuk Tersembunyi) Dari Satu Direktori Ke Yang Lain?

  3. Bagaimana Cara Menggunakan Gui Untuk Mencari File Di Gnome?

  1. Bagaimana Cara Menonaktifkan Ctrl+q Untuk Semua Aplikasi (Sistem Lebar)?

  2. Cara Cepat Meminimalkan Semua Windows Untuk Satu Aplikasi?

  3. Bagaimana cara melihat file tersembunyi di cPanel?

  1. Cara memindahkan semua file termasuk file tersembunyi ke direktori induk melalui *

  2. bagaimana melakukan pencarian terbalik pencarian vim untuk semua baris tanpa teks

  3. Bagaimana cara mengatur izin file default untuk semua folder/file dalam direktori?