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


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

Автор Тема: Удаление тестового файла наименьшего размера  (Прочитано 213 раз)

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

Оффлайн Aer_rus

  • Автор темы
  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
Какой командой можно найти текстовый файл наименьшего размера и удалить его?

Оффлайн Azure

  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 5660
  • elementaryOS 0.4 Loki, i3wm on Debian9
    • Просмотр профиля
Код: Bash
  1. ls --group-directories-first --sort=size | tail -1
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

Оффлайн Aer_rus

  • Автор темы
  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
Код: Bash
  1. ls --group-directories-first --sort=size | tail -1
А эта команда находит файл с наименьшим размером, а как же его удалить? Подскажите пожалуйста

Оффлайн snowin

  • Активист
  • *
  • Сообщений: 603
    • Просмотр профиля
Код: Bash
  1. ls --group-directories-first --sort=size | tail -1
А эта команда находит файл с наименьшим размером, а как же его удалить? Подскажите пожалуйста
rm $(ls --group-directories-first --sort=size | tail -1)
« Последнее редактирование: 01 Ноябрь 2016, 21:08:42 от snowin »

adawdp

  • Гость
Aer_rus, воспользуйтесь стандартной командой удаления. (rm - remove files or directories)

— Ознакомьтесь с руководством man rm, введя данную команду в терминале.

— В наиболее классическом виде команда выглядит rm -rf ФайлКоторыйУдаляем.ВозможноеРасширение

Оффлайн ReNzRv

  • Старожил
  • *
  • Сообщений: 1967
    • Просмотр профиля
ls --group-directories-first --sort=size | tail -1Это выводит любой файл с самым меньшим размером. Чтобы только текстовый это немного сложнее.
« Последнее редактирование: 01 Ноябрь 2016, 21:27:34 от renzrv »

Оффлайн snowin

  • Активист
  • *
  • Сообщений: 603
    • Просмотр профиля
тогда как-то так
file $(ls -aS) | grep "ASCII" | cut -f1 -d":" | tail -1

Оффлайн ReNzRv

  • Старожил
  • *
  • Сообщений: 1967
    • Просмотр профиля
snowin,
Твой вариант дает ошибку если файлы с пробелом.

Вот вариант:
find -type f -exec file --mime-type {} + | grep -Po '.*(?=:\s+text/[^/]*$)' | xargs -d'\n' stat -c '%s %n' | sort -nk1 | line | cut -d ' ' -f2- | xargs -d'\n' rm

Оффлайн Azure

  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 5660
  • elementaryOS 0.4 Loki, i3wm on Debian9
    • Просмотр профиля
renzrv,  Как же любите Вы усложнять ...rm "$(grep -ZIld skip '\w' * | xargs -0 ls -S | tail -1)"
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

 

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