Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Вопрос про find и подстановку * и .*  (Прочитано 681 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Malamut

  • Автор темы
  • Ubuntu Member
  • Администратор
  • Старожил
  • *
  • Сообщений: 3337
  • Я добрый, честно!
    • Просмотр профиля
    • Моя страница на Launchpad
Вопрос про find и подстановку * и .*
« : 08 Ноября 2010, 01:19:49 »
Задача: необходимо получить листинг содержимого некой директории, включая скрытые файлы. Причём все имена в листинге должны быть относительно данной директории. Я знаю простой путь:

find .
Однако он выдаёт содержимое относительно директории "./", а мне надо относительно текущей (что формально это одно и то же я прекрасно знаю), т.е. не

./somedir/somefile
а просто

somedir/somefile
Ок, не проблема, сделаем так:

find *
Получим всё как надо, кроме скрытых файлов в корневой директории, они не войдут в листинг. Попробуем исправить:

find * .*
Получим содержимое ./ и ../ в листинге, хотя оно нам даром не нужно.

Вопрос: как средствами find'а и bash'а выполнить задачу? Пропустить вывод "find ." через awk и вырезать ./ в начале каждой строки не предлагать - не спортивно)) Точно помню, был какой-то способ указать все скрытые объекты в текущей директории аки * для нескрытых.
"Носителем суверенитета и единственным источником власти в Российской Федерации является ее многонациональный народ" Конституция РФ

Оффлайн muted

  • Любитель
  • *
  • Сообщений: 96
    • Просмотр профиля
Re: Вопрос про find и подстановку * и .*
« Ответ #1 : 08 Ноября 2010, 03:02:54 »
костыльненько:
find . | sed 's/^.//'|sed 's/^\///'
...эээ и без awk  ;)

...без sed както так:
find . -name \* -printf %P\\n
« Последнее редактирование: 08 Ноября 2010, 04:04:22 от muted »
^^^ это мой пост? так я пьян, товарищи!
...где еще за флуд героя дадут...

Оффлайн Charles Malaheenee

  • Активист
  • *
  • Сообщений: 756
  • Учтите, мы можем дать и вредный совет.
    • Просмотр профиля
Re: Вопрос про find и подстановку * и .*
« Ответ #2 : 08 Ноября 2010, 04:24:06 »
find * .* -maxdepth 0Но тогда содержимое кучи поддиректорий узнать не удастся...
Все мы где-то, когда-то и в чем-то были новичками.

Оффлайн Дмитрий Бо

  • Погонщик серверов
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 3549
  • Я не техподдержка, я за порядком слежу
    • Просмотр профиля
Re: Вопрос про find и подстановку * и .*
« Ответ #3 : 08 Ноября 2010, 08:04:11 »
find * .[!.]*

 

Страница сгенерирована за 5.868 секунд. Запросов: 26.