Bagaimana cara membuat daftar file teks tanpa ekstensi file .txt?


10

Misalnya, bagaimana saya bisa meniru:

ls *.txt

ketika file teks saya tidak memiliki .txtakhir, dan sejauh ekstensi pergi muncul sama seperti banyak jenis file lainnya

Atau, apakah mungkin untuk mendaftar secara khusus hanya file yang tidak memiliki ekstensi file?

Jawaban:


8

Untuk mencocokkan file yang tidak memiliki ekstensi sama sekali, Anda dapat menggunakan perintah

ls | grep -v '\.'

Untuk mencocokkan file yang tidak memiliki .txtekstensi, Anda dapat menggunakan perintah

ls | grep -v '\.txt'

Ini akan meneruskan daftar file ke direktori saat ini grep, yang akan menghapus semua nama file yang memiliki .(atau .txtuntuk perintah kedua) di dalamnya.


Terima kasih! Ini menjawab pertanyaan saya. Selain itu, apakah mungkin untuk menggunakan alat grep yang sama dengan perintah lain? Misalnya, dengan todos? (untuk mengonversi ujung baris)
user82212

1
Ya, grepbisa digunakan dengan perintah apa saja. The |simbol digunakan untuk melewati keluaran dari satu perintah ke yang lain, dan grepakan cocok baris yang memiliki (atau tidak memiliki) teks tertentu. Tetapi jika Anda ingin memodifikasi teks (selain hanya mencetak baris yang cocok), Anda harus melihat pada sedperintah.
iBelieve

Untuk menemukan hanya file teks (tidak termasuk direktori dan binari) gunakan:ls --classify | grep -v '/'.'*'
chaskes

6

Dengan ls -ignore="PATTERN"Anda dapat mengecualikan file dari hasil ls.

Misalnya, ls --ignore="*.txt"untuk mengabaikan file txt.


3

Cukup negasikan pola Anda (catatan: shopt -s extglobwajib diisi).

Untuk menampilkan semua file tanpa ekstensi:

ls !(*.*)

Untuk menampilkan non- txtfile, coba:

ls !(*.txt)

0

Perintah ls -SX1|lessakan mengurutkan berdasarkan ekstensi dalam satu kolom dan file tanpa satu akan dipindahkan ke atas. Memipis melalui kurang seperti pada contoh disarankan untuk direktori dengan lebih dari beberapa file untuk membatasi output ke layar penuh pada suatu waktu.


0

Saya lebih suka menghindari penggunaan grep untuk operasi listing sederhana.

Untuk menghindari penggunaan grep,

Saya sarankan menggunakan ls !(*.*)untuk menemukan file tanpa ekstensi file, dan

ls -I "*.gz" -I "*.tz" atau ls --ignore={"*.jpg","*.png","*.bmp"}

untuk mengecualikan ekstensi file tertentu

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.