В одном из каталогов возникла необходимость удаления всех файлов от и до определенной даты, например от 1 января 2009 до 1 Января 2012 года.
Так понимаю, есть много решений данной задачи, я же воспользуюсь возможностями утилиты find.
Итак, в наличии каталог /test. В него набросал файлов с разными датами создания. А команда для сравнения и удаления будет иметь такой формат:

find -type f ( -newermt "1 Jan 2009" -and -not -newermt "1 Jan 2012" ) -delete

После запуска имеем в каталоге /test файлы состоянием до 1 января 2009 и от 1 января 2012 года и позже.

Удаление файлов старше N дней

Из Википедии

find /dir/ -atime +N | xargs rm -f

или

find /dir/ -atime +N -delete

или

find /dir/ -name "*.jpg" -mtime +N -exec rm -f {} ;

Ключи:
-name — искать по имени файла, при использовании подстановочных образцов параметр заключается в кавычки.
-type — тип искомого: f=файл, d=каталог, l=ссылка (link).
-user — владелец: имя пользователя или UID.
-group — владелец: группа пользователя или GID.
-perm — указываются права доступа.
-size — размер: указывается в 512-байтных блоках или байтах (признак байтов — символ «c» за числом).
-atime — время последнего обращения к файлу.
-ctime — время последнего изменения владельца или прав доступа к файлу.
-mtime — время последнего изменения файла.
-newer другой_файл — искать файлы созданные позже, чем другой_файл.
-delete — удалять найденные файлы.
-ls — генерирует вывод как команда ls -dgils.
-print — показывает на экране найденные файлы.
-exec command {} ; — выполняет над найденным файлом указанную команду; обратите внимание на синтаксис.
-ok — перед выполнением команды указанной в -exec, выдаёт запрос.
-depth — начинать поиск с самых глубоких уровней вложенности, а не с корня каталога.
-prune — используется, когда вы хотите исключить из поиска определённые каталоги.
N — количество дней.

Пару дней назад вышла [urlspan]новая версия Ubuntu[/urlspan], в которой, несмотря на все изменения и улучшения, осталась старая проблема — плохая интеграция «из коробки» популярных сред разработки на Java с оболочкой рабочего стола. Пришло время разобраться с другой раздражающей штукой — кривой интеграцией IDE (собственно, как и других Java-приложений) с глобальным меню Unity (это такой макоподобный док с левой стороны рабочего стола):

image_gallery

Если просто запустить Eclipse или Netbeans, то в меню появится их иконка, позволяющая управлять окном и даже закрыть приложение. Можно попытаться её закрепить в меню, но тогда получится такая непонятная штука — вместо одной иконки на панели появится две, причём они обе не будут работать — приложение с помощью них не запустится:

image_gallery (1)

Замечу, что таких проблем не возникает, если ставить IDE из пакетов, но это мало кто делает, т.к. там лежат очень уж древние версии (например, Netbeans — вообще 7.0.1). Вот и приходится мучаться со скачанными из интернета версиями. К счастью, долго мучаться не придётся — в Сети полно [urlspan]инструкций[/urlspan] о том, как решить проблему. Сделать нужно следующее:

Для Эклипса

  1. Создаём в каталоге $HOME/.local/share/applications файл eclipse.desktop.
  2. Открываем файл на редактирование и добавляем туда следующий текст (/usr/local/eclipse нужно заменить на путь к вашему Эклипсу):
    [Desktop Entry]
    Type=Application
    Name=Eclipse
    Comment=Eclipse Integrated Development Environment
    Icon=/usr/local/eclipse/icon.xpm
    Exec=/usr/local/eclipse/eclipse
    Terminal=false
    Categories=Development;IDE;Java;
  3. Добавляем созданному на предыдущем шаге ярлыку права на исполнение:
    jek@jek-laptop:~$chmod +x ~/.local/share/applications/eclipse
    .desktop
  4. Запускаем Эклипс (через консоль) и закрепляем ярлык на панели запуска.
  5. Закрываем Эклипс, снова запускаем (уже через панель запуска) и проверяем, что всё работает:

image_gallery (2)

Для Нетбинса

Инструкция такая же, только файл будет называться netbeans.desktop и контент там будет следующий (в строке «Exec» должен быть путь к исполняемому файлу вашего Нетбинса):

[Desktop Entry]
Name=Netbeans
Comment=Netbeans IDE
Exec=/usr/local/netbeans-7.2/bin/netbeans
Icon=netbeans
Terminal=false
Type=Application
Categories=Development,IDE;
StartupNotify=false

Актуальная на сегодняшний день задача — установка комплекта разработчика мобильных приложений Android в операционной системе Ubuntu Linux. Процесс абсолютно не сложный, нужно просто понимать последовательность действий, и иногда требуется разрешение некоторых мелких проблем.
Continue Reading

Скопировать /etc/passwd, /etc/group, /etc/shadow и создать директории.
+ /etc/gshadow, пробовал это, но оно каким то образом живёт на /etc/passwd- , /etc/group- , /etc/shadow- , /etc/gshadow- . Ребут нечо не решает. как его заставить подхватить то что я ему пихаю? Или как заставить useradd создавать юзера одной строчкой включая создание пароля? Тогда можно было бы одним куском вбить килограм юзверей.

 

Или как заставить useradd создавать юзера одной строчкой включая создание пароля?
Можно так

Код
useradd username
echo userpasswd | passwd --stdin username

Или так:

Код
useradd -p $(mkpasswd -Hmd5 userpasswd) username

Или так:

Код

useradd username
echo username:userpasswd | chpasswd