Відповіді:
Щоб відповідати файлам, у яких взагалі немає розширення, ви можете скористатися командою
ls | grep -v '\.'
Для відповідності файлам, що не мають .txtрозширення, можна скористатися командою
ls | grep -v '\.txt'
Це передасть список файлів у поточному каталозі до grep, який видалить усі імена файлів, у яких є .(або .txtдля другої команди).
grepможе використовуватися з будь-якою командою. |Символ використовується для передачі виведення з однієї команди в іншу, і grepбуде відповідати лініях , які мають (або не мають) конкретний текст. Але якщо ви хочете змінити текст (крім того, щоб просто надрукувати відповідні рядки), слід поглянути на sedкоманду.
ls --classify | grep -v '/'.'*'
Команда ls -SX1|lessбуде сортувати за розширенням в одному стовпчику, а файли без жодного будуть переміщені до верхньої частини. Для каталогів, що мають більше кількох файлів, пропонується прошивати менше, як у прикладі, для обмеження виводу на повний екран.
Я вважаю за краще уникати використання grep для простих операцій з лістингом.
Щоб уникнути використання grep,
Я рекомендую використовувати ls !(*.*)для пошуку файлів без розширення файлів, і
ls -I "*.gz" -I "*.tz" або ls --ignore={"*.jpg","*.png","*.bmp"}
щоб виключити конкретні розширення файлів