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


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: как проще достать имя файла из листинга ls ?  (Прочитано 1349 раз)

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

fly-R

  • Автор темы
  • Гость
к примеру через awk из ls -l как достать имя файла?
начинается оно с 9 поля, т.е.
ls -l|awk '{print $9}'выведет первое слово в названии файла, а как посмотреть все имя?
не обязательно awk, ну желательно чтобы строчка кода была компактнее

ну т.е. понятно что нужно вывести $9 и последующие токены, т.к. поле файла идет последнее в листинге
либо не выводить токены с $1 по $8 из всей строчки
только вот как это сделать?
« Последнее редактирование: 13 Августа 2013, 15:23:36 от док. Штопор »

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Re: как проще достать имя файла из листинга ls ?
« Ответ #1 : 13 Августа 2013, 15:24:03 »
ls без ключей чем не устроил?

fly-R

  • Автор темы
  • Гость
Re: как проще достать имя файла из листинга ls ?
« Ответ #2 : 13 Августа 2013, 15:25:44 »
ls без ключей чем не устроил?
мне нужны только имена файлов, без директорий, т.е. прогонять через grep ^- полюбому

Оффлайн БТР

  • Заслуженный пользователь
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 6293
    • Просмотр профиля
Re: как проще достать имя файла из листинга ls ?
« Ответ #3 : 13 Августа 2013, 15:35:44 »
 find * -maxdepth 0 -type f

fly-R

  • Автор темы
  • Гость
Re: как проще достать имя файла из листинга ls ?
« Ответ #4 : 13 Августа 2013, 15:41:05 »
БТР, класс, работает, спс!

только нужно именно через ls вывод, будут доп. пайпы, такие как sort и uniq и рекурсивная обработка каталогов
вообще наверно можно через find сделать не задавая глубину поиска, только это сложнее
« Последнее редактирование: 13 Августа 2013, 15:46:07 от док. Штопор »

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Re: как проще достать имя файла из листинга ls ?
« Ответ #5 : 13 Августа 2013, 15:47:56 »
Опишите задачу целиком.

fly-R

  • Автор темы
  • Гость
Re: как проще достать имя файла из листинга ls ?
« Ответ #6 : 13 Августа 2013, 15:52:49 »
ArcFi, грубо говоря цель найти одинаковые файлы по названию во всех вложенных директориях с последующей возможностью (не обязательно) поиска идентичных файлов из найденых и опятьже не обязательно замена их символьными ссылками

сейчас нужно найти файлы с одинаковыми названиями
вот чтото типа такого

ls -lR|grep ^-|sort|uniq -d
вернее такого

ls -lR|grep ^-|awk '{print ?????имя файла }'|sort|uniq -d
ну а если еще проще описать что нужно, то достать имя файла из листинга ls-l :)
« Последнее редактирование: 13 Августа 2013, 16:04:30 от док. Штопор »

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Re: как проще достать имя файла из листинга ls ?
« Ответ #7 : 13 Августа 2013, 16:05:04 »
Уверены, что нужно изобретать велосипед?
Просто, есть уже готовое, или "полуфабрикат", как минимум:
http://ru.wikipedia.org/wiki/Fdupes

fly-R

  • Автор темы
  • Гость
Re: как проще достать имя файла из листинга ls ?
« Ответ #8 : 13 Августа 2013, 16:07:32 »
ArcFi, спс, это то что нужно.

Уверены, что нужно изобретать велосипед?
иногда просто интересно сделать самому, конечно это глупо если есть готовые решения
« Последнее редактирование: 13 Августа 2013, 16:14:23 от док. Штопор »

 

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