Ok, sedikit terlambat menambahkan kontribusi saya, tapi saya pikir itu sepadan.
Persyaratan untuk memenuhi, per OP adalah kolom pertama yang memiliki nilai desimal .000atau .500hanya. Tidak ada ketentuan tentang nilai utama, baik dengan rentang atau panjang. Untuk ketahanan, tidak boleh dianggap dibatasi oleh apa pun kecuali bahwa tidak ada karakter yang tidak kosong sebelum kolom pertama (atau bukan lagi kolom pertama) dan bahwa isi kolom pertama akan memiliki titik desimal .,, di suatu tempat.
OP ingin menggunakan grep, yang akan mencetak seluruh baris ketika kecocokan ditemukan, jadi satu-satunya yang harus dilakukan adalah membuat pola yang cocok dengan semua dan hanya apa yang diperlukan.
Kesederhanaan itu sendiri, dan tidak ada alasan untuk menggunakan sedatau awksebagai `grep dapat menangani sumber sebagai file atau pipa.
Untuk grepmenggunakan filegrep '^[^.]*\.[05]0\{2\}\s' the_file.txt
Untuk grepdari pipa, gunakanmy_command | grep '^[^.]*\.[05]0\{2\}\s'
Polanya adalah:, ^mulai dari awal baris; [^.], cocok dengan karakter non-desimal; *, sebanyak mungkin (termasuk tidak ada); \., cocok dengan titik desimal; [05], cocok dengan lima atau nol; 0\{2\}, cocokkan 2 angka nol lagi (backslash sebelum brace buka dan tutup mencegah shell mencoba melakukan ekspansi brace); \s, cocok dengan karakter spasi putih (artinya bagian akhir kolom - untuk digunakan dalam kasus penggunaan yang berbeda, ganti dengan pemisah kolom, biasanya komman, semi-kolon, atau tab \t).
Perhatikan bahwa ini akan cocok persis apa yang OP bertanya. Ini tidak akan cocok .5000atau .0000meskipun setara secara numerik, karena pola mencari lima atau nol, diikuti oleh tepat 2 nol lebih diikuti oleh spasi putih. Jika itu penting, maka semua jawaban lain, sejauh ini, gagal karena mereka akan cocok dengan angka nol, lebih besar dari 1, setelah angka uji. Dan kecuali untuk jawaban oleh FloHimself, mereka akan cocok dengan apa pun di kolom kedua yang dimulai .000 atau .500, termasuk .0003dan .500T, dan yang oleh FloHimself akan cocok dengan apa pun yang secara matematis setara dengan .0dan.5, tidak peduli berapa banyak nol yang ada. Yang terakhir, meskipun tidak cocok dengan apa yang dinyatakan OP kemungkinan cocok dengan apa yang OP butuhkan.
Akhirnya, jika kekuatan, dan kecepatan, awkdiinginkan, meskipun OP meminta grep, maka perintahnya adalah:
Dengan sebuah file awk '$1 ~ /[^.]\.[05]0{2}$/' the_file.txt
Dengan pipa my_command | awk '$1 ~ /[^.]\.[05]0{2}$/'