Saya pikir Anda ingin menggunakan fitur shell, bukan ls. Saya menggunakan bash, jadi saya memeriksa apa yang Anda inginkan man bash. Cari "^ EXPANSION", (dengan terlebih dahulu menekan '/'). Kutipan:
EKSPANSI
Ekspansi dilakukan pada baris perintah setelah dipecah menjadi kata-kata. Ada jenis tujuh ekspansi yang dilakukan: ekspansi brace , tilde ekspansi , parameter dan ekspansi variabel , substitusi perintah , ekspansi aritmatika , kata membelah , dan ekspansi pathname .
︙
... <snip> ...
︙
Perluasan Pathname
Setelah kata membelah, kecuali -f pilihan telah ditetapkan, pesta memindai setiap kata untuk karakter *, ?dan [. Jika salah satu karakter ini muncul, maka kata tersebut dianggap sebagai pola , dan diganti dengan daftar nama file yang diurutkan berdasarkan abjad yang cocok dengan pola tersebut. ...
Saya baru-baru ini mulai mengecualikan file berdasarkan huruf pertama mereka, dengan perintah seperti:
$ ls ./[^t]*
Ini akan cocok dengan apa pun yang tidak dimulai dengan surat itu t. Jika Anda menambahkan lebih banyak karakter di antara tanda kurung, maka Anda mengecualikan file yang dimulai dengan huruf-huruf itu juga.
Mencari tautan, dan saya punya yang bagus! Lihat Pencocokan Pola . Dari sana, ini akan berfungsi untuk kasus Anda:
$ ls -lrt ./!(temp_log.*)
Ini mengharuskan extglobopsi shell diaktifkan menggunakan shoptbuiltin ( shopt -s extglob), seperti yang dinyatakan oleh Gilles .
ls --hide='temp_log.$$'seharusnya bekerja. Anda juga bisa / harus memperpanjang ini dengan wildcard, tergantung bagian mana dari keseluruhan istilahtemp_log.$$ini.