Вопрос

Я пытаюсь использовать:ls -la *randomString* В моем скрипте оболочки, чтобы перечислить все файлы и каталоги, которые содержат подстроение:"случайная строка"

все работает нормально, за исключением случаев, когда он встречает каталоги, соответствующие подстроке, и когда это происходит, я получаю что-то вроде этого:(допустим, имя каталога было «TTrandomStringTT»)

-rw-r----- 1 myName none 7 января 17 17:57 .YrandomStringY.txt

ТрандомстрингТТ:всего 16

drwxr-s--x 2 myName none 4096 17 января 18:00 .

drwxr-s--x 3 myName none 4096 17 января 19:00 ..

я хочу, чтобы он составил список

drwxr-s--x 2 hctsui none 4096 17 января 18:19 TTfrandomStringTT

как обычно ls -la сделал бы

Я действительно новичок в Shell, поэтому мне действительно нужна помощь, спасибо, за то, что помог мне

Это было полезно?

Решение

Если ваш glob соответствует имени каталога, он отобразит содержимое каталога.Если вы не хотите, чтобы это произошло, сделайте ls -lad *randomString*

Другие советы

Еще один способ использования — find, который рекурсивно ищет вас.

find . -iname "*randomstring*" -ls
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top