Як я можу не допустити спуску ls до каталогів, схожих на чорнослив для пошуку?


12

Якщо я набираю, ls *ro*я також отримую файли у підкаталогах, які відповідають *ro*шаблону.
Чи є варіант, подібний до чорносливу?

В ідеалі прапор, інакше, можливо, виконавець?

Відповіді:


25

Використовуйте -dперемикач:

ls -d *ro*

.....


Я написав сценарій, який отримує біти доступу до папки (перетворені на позначення 755 або 644), зміни дати та часу та ім'я папки, після чого надсилає інформацію через текстове повідомлення. Мені знадобилося <140 символів. Це допомогло, спасибі.
користувач208145

4

Ви можете використовувати:

ls | grep ro

Для виконання завдання. Трубопровід, вихід lsякого виводить лише вміст поточного каталогу, grepта вибірково виводить файли, що відповідають шаблону регулярних виразів.


-1 Як би греп знав, якби відповідність шаблону знаходилась у каталозі чи підкаталозі?
Майкл Дюрант

Також насправді нічого не повертає. Спробуй це.
Майкл Дюрант

1
За замовчуванням ls виводить лише вміст поточного каталогу. Таким чином, передача цього виводу в grep повертає лише ті дані, які відповідають заданому регулярному вираженню. Я спробував задану команду в моїй системі Arch і вона прекрасно працює.
darnir

Оскільки grep приймає регулярний вираз, не додайте зірочки навколо ro. Як я вже згадував, просто виконуйте grep ro. Це жорстокий злом у порівнянні з відповіддю на маневри, але працює чудово.
darnir

Якщо у вас є абсурдна кількість файлів, відповідь у відповіді на маніпуляцію може досягти межі довжини командного рядка. Це не буде.
Ізката
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.